只要此代码运行,我都会收到上述错误。该代码应该将记录插入表中,然后从另一个表中删除记录。
for I := iMax - K to iMax do
begin
Inc(a);
with dmMenu.qryMcDonalds do
begin
SQL.Text :=
'SELECT ID,ItemID,ItemPrice,ItemCategory FROM tblCheckout WHERE ID = ' + IntToStr(I);
Open;
sItemID := Fields[1].AsString;
rItemPrice := Fields[2].AsFloat;
sItemCategory := Fields[3].AsString;
ShowMessage(IntToStr(I));
// I get the error here
SQL.Text :=
'INSERT INTO tblOrderItems (OrderItemID,OrderID,ItemCategory,ItemPrice) VALUES ("' + sOrderID + '_' + IntToStr(a) + '"' + ',"' + sOrderID + '","' + sItemID + '","' + sItemCategory + '","' + FloatToStrF(rItemPrice,ffCurrency,10,2) + '")';
ExecSQL;
SQL.Text := 'DELETE FROM tblCheckout WHERE ID = ' + IntToStr(I);
ExecSQL;
end; // with SQL
end; // for I
edit:我认为我的问题出在“ INSERT INTO”部分。除最后一个列以外,所有列均为短文本,ItemPrice是一种货币。我也在使用access