zoukankan      html  css  js  c++  java
  • .Net和SqlServer的事务处理实例

    1,SqlServer存储过程的事务处理

    一种比较通用的出错处理的模式大概如下:
    Create procdure prInsertProducts
    (
     @intProductId int,
     @chvProductName varchar(30),
     @intProductCount int
    )
    AS
    Declare @intErrorCode int
    Select @intErrorCode=@@Error
    Begin transaction
     if @intErrorCode=0
       begin
         -insert products
         insert products(ProductID,ProductName,ProductCount) 
         values(@intProductId,@chvProductName,@intProductCount)
         Select @intErrorCode=@@Error --每执行完一条t-sql语句马上进行检测,并把错误号保存到局部变量中
       end
     if @intErrorCode=0
       begin 
         -update products
         update products set ProductName='MicroComputer' where ProductID=5
         Select @intErrorCode=@@Error
       end
    if @intErrorCode=0
       commit transaction
    else
       rollback transaction
     
     Return @intErrorCode --最好返回错误代号给调用的存储过程或应用程序
     
    2,.Net中使用事务处理
    SqlConnection myConnection = new SqlConnection("Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;"); 
    myConnection.Open();
     
    SqlTransaction myTrans = myConnection.BeginTransaction(); //使用New新生成一个事务 
    SqlCommand myCommand = new SqlCommand(); 
    myCommand.Transaction = myTrans;
     
    try 
    myCommand.CommandText = "Update Address set location='23 rain street' where userid='0001'"; 
    myCommand.ExecuteNonQuery(); 
    myTrans.Commit(); 
    Console.WriteLine("Record is udated."); 
    catch(Exception e) 
    myTrans.Rollback(); 
    Console.WriteLine(e.ToString()); 
    Console.WriteLine("Sorry, Record can not be updated."); 
    finally 
    myConnection.Close(); 
    }
  • 相关阅读:
    119. Pascal's Triangle II
    118. Pascal's Triangle
    112. Path Sum
    111. Minimum Depth of Binary Tree
    110. Balanced Binary Tree
    108. Convert Sorted Array to Binary Search Tree
    88. Merge Sorted Array
    83. Remove Duplicates from Sorted List
    70. Climbing Stairs
    陌陌面试经历
  • 原文地址:https://www.cnblogs.com/YoungPop-Chen/p/3270513.html
Copyright © 2011-2022 走看看