小
小刚
Unregistered / Unconfirmed
GUEST, unregistred user!
//用ADO 数据库为Access
with Query1 do begin
SQL.Clear;
SQL.Add('PARAMETERS [_XBH] Short;');
SQL.Add('Update Db1 SET GCL=GCL+(SELECT Gcl_SUM FROM Db2 WHERE Db2.XBH=[_XBH]) ');
SQL.Add('WHERE Db1.XBH=[_XBH]');
Parameters.ParamValues['_XBH'] :=iTmp;
ExecSQL;//提示错误:“操作必须是一个可更新的查询”
end;
//为什么用Ado的不行,而用下面的方法又可以呢?
with ADOQuery1 do begin
//用BDE 数据库为Paradox
SQL.Clear;
SQL.Add('Update Db1 SET GCL=GCL+(SELECT Gcl_SUM FROM Db2 WHERE Db2.XBH=:_XBH)';
SQL.Add('WHERE db1.XBH=:_XBH');
ParamByName('_XBH').AsInteger :=iTmp;
ExecSQL;
end;
帮帮我,我该用什么办法达到我的要求?
with Query1 do begin
SQL.Clear;
SQL.Add('PARAMETERS [_XBH] Short;');
SQL.Add('Update Db1 SET GCL=GCL+(SELECT Gcl_SUM FROM Db2 WHERE Db2.XBH=[_XBH]) ');
SQL.Add('WHERE Db1.XBH=[_XBH]');
Parameters.ParamValues['_XBH'] :=iTmp;
ExecSQL;//提示错误:“操作必须是一个可更新的查询”
end;
//为什么用Ado的不行,而用下面的方法又可以呢?
with ADOQuery1 do begin
//用BDE 数据库为Paradox
SQL.Clear;
SQL.Add('Update Db1 SET GCL=GCL+(SELECT Gcl_SUM FROM Db2 WHERE Db2.XBH=:_XBH)';
SQL.Add('WHERE db1.XBH=:_XBH');
ParamByName('_XBH').AsInteger :=iTmp;
ExecSQL;
end;
帮帮我,我该用什么办法达到我的要求?