SqlTransaction

Posted soulbky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SqlTransaction相关的知识,希望对你有一定的参考价值。

事物的简单应该

转自:https://www.cnblogs.com/hgmyz/p/6490288.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
sql1="INSERT INTO tablename(Id,col1,col2) VALUES(@Id,@col1,@col2)   update tablename2 set col=@col";
sql2="INSERT INTO tablename3(Id,col1,col2) VALUES(@Id,@col1,@col2)";
 
//参数设置(略)
 
using(SqlTransaction tran = SqlHelper.BeginTransaction(SqlHelper.DBConnectionString))
{
 try
 {   
 
  SqlHelper.ExecuteNonQuery(tran,CommandType.Text,sql1,parms);
  SqlHelper.ExecuteNonQuery(tran,CommandType.Text,sql2,parms);
  tran.Commit();
   
  return true;
 }
 catch
 {
  tran.Rollback();
  return false;
 }

  放在sqlhelper.cs中

1
2
3
4
5
6
7
public  static SqlTransaction BeginTransaction(string con)
{
 SqlConnection connection = new SqlConnection(con);
 connection.Open();
 SqlTransaction tran = connection.BeginTransaction();
 return tran;
}

 

以上是关于SqlTransaction的主要内容,如果未能解决你的问题,请参考以下文章

使用 sqltransaction 插入表时选择数据

SqlTransaction

CommandBuilder 和 SqlTransaction 插入/更新行

SqlConnection ,SqlTransaction,SqlCommand的常用法

无法访问 SqlTransaction 对象以在 catch 块中回滚

将数据读取器与 sqltransactions 一起使用