12c#中事务及回滚

Posted 苏悠莫

tags:

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

 1         public void UpdateContactTableByDataSet(DataSet ds, string strTblName)
 2         {
 3             try
 4             {
 5                 SqlDataAdapter myAdapter = new SqlDataAdapter();
 6                 SqlConnection conn = new SqlConnection("connection string");
 7                 SqlCommand myCommand = new SqlCommand("select * from strTblName", conn);
 8                 myAdapter.SelectCommand = myCommand;
 9                 SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
10 
11                 conn.Open();
12                 SqlTransaction myTrans = conn.BeginTransaction();
13                 myCommand.Transaction = myTrans;
14 
15                 try
16                 {
17                     myAdapter.Update(ds, strTblName);
18                     myTrans.Commit();
19                 }
20                 catch (Exception e)
21                 {
22                     try
23                     {
24                         myTrans.Rollback();//回滚并取消数据库的更新
25                     }
26                     catch (SqlException ex)
27                     {
28                         if (myTrans.Connection != null)
29                         {
30                             Console.WriteLine("回滚失败! 异常类型: " + ex.GetType());
31                         }
32                     }
33                 }
34                 finally
35                 {
36                     conn.Close();
37                 }
38 
39             }
40             catch (Exception ex)
41             {
42                 throw ex;
43             }
44         }

事务回滚主要用于提交失败。(lock)用于处理并发事件。

以上是关于12c#中事务及回滚的主要内容,如果未能解决你的问题,请参考以下文章

sql事务(Transaction)用法介绍及回滚实例

sql事务

Analysisbinlog 分析及回滚操作介绍

Jenkins使用FTP进行一键部署及回滚2(Windows)(项目实践)

[超详细] Git 远程仓库及回滚日志操作

Jenkins使用FTP进行一键部署及回滚(Windows)