我想问一下,用ADOQUERY查询出来的数据怎么样用事务处理,我原来是用BDE的QUERY
连的,用BDE连的时候不是可以将cachedupdata这个属性设为真,再连接一个UpdateSQL吗,这样就可以直接在query里面修改了吗,最后再用database的事务处理吗,
现在我用ADOQUERY试了一下,如果查询出来的数据只是一个表的内容那他可以直接修改,但是如果查询出来的数据包含了多个表的数据,比如说我用一个dbgrid连接了这个ADO
query的话,那么直接在dbgrid中修改是会报错的。
我现在是这样一个情况,我有一个主从表,当提交的时候必须两个表一起提交,否则就两个表都不提交,原来用DBE的query可以轻松的实现 ,但是现在改用ADOquery的话,不得行, 有什么办法可以解决吗?
连的,用BDE连的时候不是可以将cachedupdata这个属性设为真,再连接一个UpdateSQL吗,这样就可以直接在query里面修改了吗,最后再用database的事务处理吗,
现在我用ADOQUERY试了一下,如果查询出来的数据只是一个表的内容那他可以直接修改,但是如果查询出来的数据包含了多个表的数据,比如说我用一个dbgrid连接了这个ADO
query的话,那么直接在dbgrid中修改是会报错的。
我现在是这样一个情况,我有一个主从表,当提交的时候必须两个表一起提交,否则就两个表都不提交,原来用DBE的query可以轻松的实现 ,但是现在改用ADOquery的话,不得行, 有什么办法可以解决吗?
set set nocount on
set @re_message='插入状态主表成功'
commit transaction
goto pover
end
IF NOT ADOConnection1.InTransaction THEN ADOConnection1.BeginTrans ;
TRY
ADOConnection1.BeginTrans;
except
ADOConnection1.RollbackTrans;
end;
但是有错,是不是先要设置些什么参数吗?
adoconnection1.BeginTrans;//开始事务
adoconnection1.CommitTrans;//提交事务
except
adoconnection1.RollBackTrans;//事务回滚
end;