ADODB:带参数化查询的已修改记录数

时间:2011-11-23 13:41:40

标签: delphi ado adodb

我在Delphi 7中使用ADODB,对于UPDATE查询,我使用TADOConnection Execute过程“recordsAffected”变量获取修改记录的数量。 像这样:

 MyConnexion.Execute(sReq, iResReq, [eoExecuteNoRecords]);

iResReq是修改后的记录编号。

现在我想使用带参数化SQL的参数化查询,如:

SQL.Add('UPDATE TABLE SET NAME="TEST" WHERE NAME=:PARAM);
Parameters.ParamByName('PARAM').text:='Smith';

但我真的不知道如何找到修改后的记录数。 除了我的问题,你知道一个关于ADODB参数化查询的好tuto吗?

1 个答案:

答案 0 :(得分:4)

使用TADOCommand,你可以这样做。

var
    RecordsAffected: Integer;
begin
    ADOCommand1.CommandText := 'UPDATE TABLE SET NAME="TEST" WHERE NAME=:PARAM';
    ADOCommand1.Parameters.ParamByName('PARAM').Value:='Smith';
    ADOCommand1.Execute(RecordsAffected, EmptyParam);

如果您使用ExecSQL(如评论中TLama所述),也可以使用TADOQuery。