ADOConnection.CommitTrans是什么意思?(10分)

  • 主题发起人 主题发起人 fashow
  • 开始时间 开始时间
F

fashow

Unregistered / Unconfirmed
GUEST, unregistred user!
ADOConnection.CommitTrans,请说得具体点,初学者,越详细越好
 
没人知道吗?还是嫌太简单了?
 
提交事务
 
能详细点吗?顺便问下什么是事务?老是听说,可一直没搞清楚事务是个什么东西,和事件有什么区别?回答的详细可以加分!
 
adoconnection.begintrans
try
.....
adoconnection.CommitTrans;
Except
adoConnection.RollBacktrans;
end;
这样的事务处理。事务,明白吗?
 
没明白,事务和事件有什么区别?
 
事务:
一人从工行A转帐到农行B
系统处理
A:减少钱
B:增加钱
如果中途出错,A减少后B未增加,即转帐有一半未功,第二天你恐怕你得骂娘了。
为了解决这一类问题,于是把
A操作和B操作放在一起操作,要成功一起成功,只要其中一个出现错误则回到初始状态。这样先保证你的钱不会增加也不会减少。
这样的把多个操作合为一个操作就叫事务
 
事务是用于保证数据的完整性和一致性
譬如你有一个点击事件,要同时要向多个数据表添加,删除等等操作,这时你就要用事务把
这个事件前后保护起来,
adoconnection.begintrans和adoconnection.CommitTrans;
,以免因为未知原因,只对其中的某些个表进行了操作,而其他的则没有。当出现错误的时候事务就会回滚,adoConnection.RollBacktrans;
回滚到这个点击事件前这些数据库的状态
呵呵,我的理解
 
你可以在ADOConnection.BeginTrans和ADOConnection.CommitTrans之间利用连接到ADOConnection的多个数据集控件执行多次Insert,Update,Delete等操作,这些操作要么全部完成,要么一个也不能完成。这就叫事务完整性。因为某些操作是紧密相关的。例如银行的转帐,首先要扣去汇出方的金额,然后要增加汇入方的金额。如果不控制事务完整性,在扣除金额后可能会由于某种异常导致汇入失败。而利用
adoconnection.begintrans
try
.....
adoconnection.CommitTrans;
Except
adoConnection.RollBacktrans;
end;
异常处理结构语法,可以控制汇入和汇出必须全部完成,UNDERSTAND?上面的朋友已经说明白了,还不给人家分,太不厚道了。以后没人理你的。
 
事务,我知道了,commitTrans做的是怎样的事呢?换句话说,执行了是什么效果呢?
还有想给你追加分,怎么弄?
 
就是开始了一个事务喽,有一个commitTrans,就有一个CommitTrans来结束事务
 
谢谢了,我全懂了,每人10分,现在问题是怎么追加分数啊,我原来只给了10分啊
 
由于没搞清楚怎么追加分,只能这么给分了!
 
后退
顶部