zoukankan      html  css  js  c++  java
  • SQL事务

     1             string connstr = "";
     2             using (SqlConnection conn = new SqlConnection(connstr))
     3             {
     4                 conn.Open();
     5                 using (SqlTransaction tx = conn.BeginTransaction())
     6                 {
     7                     try
     8                     {
     9                         //using是保证资源一定会被回收的,离开using范围后自动调用Dispose方法(无论是否有异常)
    10 
    11                         //using==try...finally...
    12 
    13                         //using不会进行异常的catch
    14 
    15                         using (SqlCommand cmd1 = conn.CreateCommand())
    16 
    17                         using (SqlCommand cmd2 = conn.CreateCommand())
    18                         {
    19                             cmd1.Transaction = tx;//在SQLServer中必须把BeginTransaction返回的对象赋值给SqlCommand的
    20                             //Transaction属性。MySql也推荐折磨写不写也可以。
    21                             cmd1.CommandText = "insert into T_Persons(Name,Age) values('a',1)";
    22                             cmd1.ExecuteNonQuery();
    23                             cmd2.Transaction = tx;
    24                             cmd2.CommandText = "insert into T_Persons(Name,Age) values('b',2)";
    25                             cmd2.ExecuteNonQuery();
    26                         }
    27 
    28                         tx.Commit();
    29                     }
    30                     catch (Exception ex)
    31                     {
    32                         tx.Rollback();
    33                     }
    34                 }
    35             }
  • 相关阅读:
    ELASTIC 动态修改配置API
    ELASTIC API
    ELASTIC索引监控脚本
    java并发多线程纪要
    Git 基础
    Linux 权限规划ACL
    Linux账号管理(二)
    Linux账号管理(一)
    Linux 备份工具dump
    Linux 文件压缩、打包
  • 原文地址:https://www.cnblogs.com/ink-heart/p/5947648.html
Copyright © 2011-2022 走看看