zoukankan      html  css  js  c++  java
  • 事务的使用

    获取连接对象:

    引用:using System.Configuration;

    string connStr = ConfigurationManager.ConnectionStrings["conStr"].ToString();

    写法一:

    using (SqlConnection conn = new SqlConnection (connStr)
    {
    conn.Open();
    using (SqlTransaction tran = conn.BeginTransaction())
    {
    using (SqlCommand cmd = conn.CreateCommand())
    {
    try
    {
    cmd.Transaction = tran;  //为命令指定事务
    cmd.CommandText = "insert into info values('小谢','男')";
    cmd.ExecuteNonQuery();
    cmd.CommandText = "insert into info values('小周','男')";
    cmd.ExecuteNonQuery();
    tran.Commit();  //事务提交
    }
    catch (Exception)
    {
    tran.Rollback(); //事务回滚
    }
    }
    }
    }

    写法二:

    SqlConnection conn = new SqlConnection(连接对象);
    conn.Open();
    SqlTransaction tran = conn.BeginTransaction();
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = conn;
    cmd.Transaction = tran;
    try
    {
    cmd.CommandText = "insert into info values('小谢','男')";
    cmd.ExecuteNonQuery();
    cmd.CommandText = "insert into info values('小周','男')";
    cmd.ExecuteNonQuery();
    tran.Commit();
    }
    catch (Exception)
    {
    tran.Rollback();
    }

    conn.Close(); 

    多条sql语句:

    List<string> sqlStr = new List<string>();
    string sql1 = "insert into info values('小吴','男')";
    string sql2 = "insert into info values('小胡','男')";
    sqlStr.Add(sql1);
    sqlStr.Add(sql2);
    using (SqlConnection conn = new SqlConnection (connStr))
    {
    conn.Open();
    using (SqlTransaction tran = conn.BeginTransaction())
    {
    using (SqlCommand cmd = conn.CreateCommand())
    {
    try
    {
    cmd.Transaction = tran;   //为命令指定事务
    foreach (var item in sqlStr)
    {
    cmd.CommandText = item;
    cmd.ExecuteNonQuery();
    }
    tran.Commit();
    }
    catch (Exception)
    {
    tran.Rollback(); //事务回滚
    }
    }
    }
    conn.Close();
    }

  • 相关阅读:
    将同一个应用程序同时作为 http 和 https
    将数组元素划分为等长的块(二维数组)
    将数组中的空元素转为 undefined
    将某个类型断言为另一个与之毫无关系的类型
    将前端代码放入 Egg 项目中
    将根组件挂载到 DOM 节点上
    将类数组对象转换成数组
    将 ts 代码转成 js 代码
    将代码推迟到系统资源空闲时执行
    React 将 state 传给子组件用
  • 原文地址:https://www.cnblogs.com/FavoriteMango/p/10512061.html
Copyright © 2011-2022 走看看