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();
    }

  • 相关阅读:
    素数路径Prime Path POJ3126 素数,BFS
    Fliptile POJ3279 DFS
    Find the Multiple POJ1426
    洗牌Shuffle'm Up POJ3087 模拟
    棋盘问题 POJ1321 DFS
    抓住那只牛!Catch That Cow POJ3278 BFS
    Dungeon Master POJ2251 三维BFS
    Splitting into digits CodeForce#1104A
    Ubuntu下手动安装Nvidia显卡驱动
    最大连续子序列和
  • 原文地址:https://www.cnblogs.com/FavoriteMango/p/10512061.html
Copyright © 2011-2022 走看看