簡體   English   中英

在Delphi中使用數組插入Into語句不起作用

[英]Insert Into statement using arrays in Delphi isn't working

因此,我正在為學校做一個Delphi 7項目,該項目要求我將SQL與Delphi程序集成在一起。 我使用Microsoft Access作為數據庫。 我試圖在insert into語句中使用字符串數組,但是由於某些原因,我在INSERT INTO語句中不斷收到語法錯誤。 我的插入代碼是:

ADOQuery1.SQL.Clear;                     
ADOQuery1.SQL.Add('INSERT INTO ' + IntToStr(o) + ' (' + column[t] + ')');
ADOQuery1.SQL.Add('VALUES ("' + Stats[t] + '")');  
ADOQuery1.SQL.Add('WHERE No = "' + Stats[1] + '" ');                            
ADOQuery1.ExecSQL;

o是一個應該指示表名稱的數字, column[t]是我希望Stats[t]出現的列。

如何解決此錯誤?

您不能將WHEREINSERT語句一起使用。

SQL INSERT INTO語句

INSERT INTO語句(Microsoft Access SQL)

為了獲得最佳實踐,請學習如何在查詢中使用參數

要插入表格:

ADOQuery1.Parameters.ParamByName('Col1').Value:=Va1;
ADOQuery1.Parameters.ParamByName('Col2').Value:=Va2;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text := 'INSERT INTO YourTable Values(:Col1,:Col2)';
ADOQuery1.ExecSQL;

注意:

不能INSERT INTO語句中使用WHERE子句。

如果名稱是數字,則最好重命名表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM