zoukankan      html  css  js  c++  java
  • ADO.Net事务处理

    SQL Server中的事务可以将多个数据库增删改查操作合并为单个工作单元,在操作过程中任何部分出错都可以滚回已经执行的所有更改.ADO.Net中也提供了事务处理功能,通过ADO.net事务,可以将多个任务绑定在一起,如果所有的任务成功,就提交事务,如果有一个任务失败,就讲滚回事务.ADO.Net事务通过该Transaction类实现,每个.Net Framework 数据提供程序都有自己的Transaction 类执行事务.例如,事务在SQL Server数据库中执行,则需要引入System.Data.Sqlclient命名空间,对应的事务对象为SQLTransaction.

     

    执行ADO.Net事务包含四个步骤,接下来以SQLTransaction对象为例介绍:

     

    1:调用SqlConnection对象的BeginTransaction()方法,创建一个SqlTransaction对象标记事务开始

    2:将创建的SqlTransaction对象分配给要执行的SqlCommand的Transaction属性
    3:调用想对应的方法执行SQLCommand命令
    4:调用SqlTransaction的Commit()方法完成事务,或者调用Rollback()方法终止事务

    (注意事项:在调用BeginTransaction()方法开始事务之前,要打开数据库连接,否则将出现异常)
    SqlTransaction trans = null;
    SqlConnection con = new Sqlconnection("数据库连接语句");
    try
    {
      con.Open();
      trans = con.BeginTransaction();
      SqlCommand com = new SqlCommand();
      //一下4步是要执行SqlParameter,如果不执行可以直接跳过使用com.CommandText="SQL语句";
      com.CommandText = @"数据库语句 条件=@变量";
      SqlParameter para = new SqlParameter("变量","");
      com.Parameters.Add(para);
      com.CommandText=com.CommandText;
     
      com.Connection=con;
      com.Transaction=trans;
      com.ExecuteNonQuery();//执行方式自己选择
      trans.Commit();//执行提交事务
     
    }catch
    {
      trans.Rollback();//如果前面有异常则事务回滚
    }
    finally
    {
      con.Close();
    }
  • 相关阅读:
    android 21 隐式意图启动系统预定义activity
    android 20 Intnet类重要的成员变量
    android 19 activity纵横屏切换的数据保存与恢复
    android 18 Bundle类
    android 17 activity生命周期
    Centos6.4建立本地yum源
    eclipse实现批量修改文件的编码方式
    [系统资源]/proc/meminfo和free输出解释
    监控WebLogic 8.x的解决方案(监控应用服务器系列文章)
    linux网络监控脚本
  • 原文地址:https://www.cnblogs.com/Xanthus/p/9589519.html
Copyright © 2011-2022 走看看