【发布时间】:2021-02-07 23:15:00
【问题描述】:
我正在使用以下代码更新特定 SQLite 记录的多个字段(WONumber = 工单号)
aFDQuery.SQL.Clear;
with aFDQuery.SQL do
begin
BeginUpdate;
try
Add('update EVENTS set (SITENAME, FILENAME, PARTS, DATERECEIVED, DATECONVERTED, REMINDER, INCOMPLETE)');
Add('values (:site, :file, :parts, :received, :converted, :reminder, :incomplete) where (WONUMBER = :number)');
finally
EndUpdate;
end;
end;
aFDQuery.Params.ParamByName('number').AsInteger := Number;
aFDQuery.Params.ParamByName('site').AsString := ShortSiteName;
aFDQuery.Params.ParamByName('file').AsString := FileName;
aFDQuery.Params.ParamByName('parts').AsString := Parts;
aFDQuery.Params.ParamByName('received').AsDateTime := DateReceived;
aFDQuery.Params.ParamByName('converted').AsDateTime := DateConverted;
aFDQuery.Params.ParamByName('reminder').AsBoolean := Reminder;
aFDQuery.Params.ParamByName('incomplete').AsBoolean := Incomplete;
aFDQuery.ExecSQL;
DBConnection.Commit;
但我收到以下错误
Error ESQLiteNativeException: while updating Tracking SQLite with: [FireDAC][Phys][SQLite] ERROR: near "values": syntax error
有什么建议吗? 这种语法有什么问题? 谢谢
【问题讨论】:
-
Update EVENTS set sitename = :sitename, filename = :filename... -
谢谢 NolaSpeaker。这节省了我的时间。保持安全。
标签: sql sqlite delphi sql-update where-clause