使用特定条件删除adotable中的记录

Ale*_*ith 3 delphi delphi-7

我试过在网上看但没有运气,我怎么能删除按钮点击中的所有记录,符合不同的标准.例如,我希望能够删除adotable中的所有记录,其中Labour_ID(这是adotable中的字段名称)等于DBedit.Text.

对不起,这有点模糊,但建议将不胜感激.谢谢

Ken*_*ite 9

您可以使用简单的循环删除行:

while ADOTable1.Locate('Labour_ID', Edit1.Text, []) do
  ADOTable1.Delete;
Run Code Online (Sandbox Code Playgroud)

更好的是使用TADOQuery,并使用SQL执行:

ADOQuery1.SQL.Text := 'DELETE FROM YourTable WHERE Labour_ID = :Labour_ID';
ADOQuery1.Params.ParamByName('Labour_ID').AsString := Edit1.Text;
ADOQuery1.ExecSQL;
Run Code Online (Sandbox Code Playgroud)

有关最后一个参数的信息,请参阅TDataSet.Locate上的Delphi文档LocateOptions.(该链接指向XE2的文档,但自D7以来ADO没有太大变化(如果有的话)).