MFC数据库操作 - 事务处理

本文介绍了MFC中数据库操作的事务处理,包括事务的概念、重要性和在数据库更新中的作用。通过ADO的Connection对象,利用BeginTrans()启动事务,CommitTrans()提交事务,以及Rollback()回滚事务来确保数据一致性。示例代码展示了如何在转账操作中应用事务处理,以防止因部分操作失败导致的数据不一致。
摘要由CSDN通过智能技术生成
事务简介:
事务是为了完成一个特定的功能或任务而要进行的一系列的处理步骤,事务代表了所需的系列动作的整体。
一个事务的所有语句被作为整体执行,遇到错误时,可以回滚事务、取消事务内所做的所有改变。
在数据库中,事务可以把多个操作作为单一的、最基本的活动来进行。

例如,在货币转账时,必须从账户中减去某个数额并将其对等数额添加到另一账户中。无论其中的哪个更新失败,都将导致账户收支不平衡。
如果能把这两个操作组织在一个事务中执行,就可以解决因为某个操作失败而导致的不平衡问题。因为事务的特点就是要么都执行,要么都不执行。

在 ADO 的 Connection 对象中提供了事务的处理功能,其提供了三个方法用于处理事务。

Connection 提供的事务处理方法讲解:
BeginTrans() 使用该方法标识一个事务的开始,调用该方法后,就可以对连接的数据源进行任何需要的更改。
CommitTrans() 使用该方法标识一个事务的结束,如果从事务开始到事务结束中的一切更改顺利进行,该方法保证事务被成功执行,
事务内对数据库所做的修改永久的保存到数据库中。
Rollback() 使用该方法也标识一个事务的结束,但是,它使用在事务执行过程中出现错误的情况,该方法能够使事务内所做的修改回滚到事务执行之前的状态。

_bstr_t vSQL;
int dvdNum = 0;
_variant_t RecordsAffected, var;
_RecordsetPtr pDVDRecordset;
pDVDRecordset.CreateInstance(__uuidof(Recordset))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值