用ado可否修改返回的数据? 比如
procedure TForm1.Button2Click(Sender: TObject);
begin
form1.ADOQuery1.Close;
form1.ADOQuery1.SQL.Clear;
form1.ADOQuery1.SQL.Add('select * from userdata where ID="33"  and key="1" ');
我想要实现的功能是,如果ID字段内有33,把所有符合key字段值等于1的ID字段的值减1 
form1.ADOQuery1.Open;
if form1.ADOQuery1.RecordCount>0 then
begin
修改的代码?
请高手帮忙。
end;
end;

解决方案 »

  1.   

    form1.ADOQuery1.Close;
    form1.ADOQuery1.SQL.Clear;
    form1.ADOQuery1.SQL.Add('update userdata set ID=ID-1 ID="33" where and key="1" ');
    我想要实现的功能是,如果ID字段内有33,把所有符合key字段值等于1的ID字段的值减1 
    ADOQuery1.Exec
    这是不要ADOQUERY1返回结果集
      

  2.   

    老兄,SQL语句写错了,应该是
    'update userdata set ID=ID-1 where ID="33"and key="1" '
    还有,如果ID为字符格式,则要先转换格式才能减;
    如是数字格式,则where 语句中应该写成  ID=33 即可,不用加双引号了