ADO.NET_事务处理

原文地址:http://www.dingos.cn/index.php?topic=1288.0

事务处理是一组数据操作,这些操作要么必须全部成功,要么必须全部失败,以保证数据的一致性和完整性
已成功地完成对一个表的操作,但是关系表尚未更新,因此,数据会出现不一致的现象
确保:成功地进行整个操作或者取消整个操作

【事务处理命令】
  • Begin: 在执行事务处理中的任何操作之前,必须使用 Begin 命令来开始事务处理
  • Commit: 在成功将所有修改都存储于数据库时,才算是提交了事务处理
  • Rollback: 由于在事务处理期间某个操作失败,而取消事务处理已做的所有修改,这时将发生回滚
【ADO.NET事务处理步骤】
  • 创建数据库连接并用Open()方法打开连接;
    SqlConnection objSqlConnection = 
        new SqlConnection("server=SQLDB; uid=sa; pwd=password; database=pubs");
    objSqlConnection.Open();
  • 使用Connection对象的BeginTransaction()方法开始事务处理,该方法将创建一个事务处理对象。
    SqlTransaction objSqlTransaction = objSqlConnection.BeginTransaction();
  • 将Command对象的Transaction属性设置为创建的事务处理对象。
    objSqlCommand.Transaction = objSqlTransaction;
  • 用Command对象执行SQL命令;
    insertCommand = "Insert into userlogin values ("g", "g");
    objSqlCommand.CommandText = insertCommand;
    objSqlCommand.ExecuteNonQuery ();
  • 如果操作过程没有错误,则提交事务处理。如果操作过程中发生错误,则回滚以完成的所有修改;
    objSqlTransaction.Commit();   //执行成功时提交数据库
    objSqlTransaction.Rollback();   //执行失败时回滚数据库
  • 关闭连接:
    objSqlConnection.Close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜晚回家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值