一段Delphi的程序
FrmPublicDM.LabDBConnection.BeginTrans;//姑且叫他大事务
Try
保存数据Update
...
调用了一个存储过程
...
FrmPublicDM.LabDBConnection.CommitTrans;
Except
FrmPublicDM.LabDBConnection.RollbackTrans;
End 调用的存储过程也有一个事务处理,Begin和Commit 因为只有一个活动事务,所有大的事务被意外的提交了。保存的数据没保存上。
但是为什么连续执行这段代码两次,第2次要保存的数据就可以保存的上,也就是说大的事务也被提提交了。(调用的存储过程没有条件判断)。
FrmPublicDM.LabDBConnection.BeginTrans;//姑且叫他大事务
Try
保存数据Update
...
调用了一个存储过程
...
FrmPublicDM.LabDBConnection.CommitTrans;
Except
FrmPublicDM.LabDBConnection.RollbackTrans;
End 调用的存储过程也有一个事务处理,Begin和Commit 因为只有一个活动事务,所有大的事务被意外的提交了。保存的数据没保存上。
但是为什么连续执行这段代码两次,第2次要保存的数据就可以保存的上,也就是说大的事务也被提提交了。(调用的存储过程没有条件判断)。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货