SQL事务用法begin tran,commit tran和rollback tran的用法
生活随笔
收集整理的這篇文章主要介紹了
SQL事务用法begin tran,commit tran和rollback tran的用法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Sql Server 2005/2008中提供了begin tran,commit tran和rollback tran來使用事務。begin tran表示開始事務, commit tran表示提交事務,rollback tran表示回滾事物
-- ============================================= -- Author: cynimoon -- Create date: 2009-10-09 -- Description: 示例存儲過程 -- ============================================= -- EXEC TEST_PROC '文綜','包括歷史,地理,政治','政治','文綜的一門' CREATE PROCEDURE [dbo].[TEST_PROC] @A_Name NVARCHAR(20), -- A表姓名 @A_Remark NVARCHAR(4000), -- A表備注 @B_Name NVARCHAR(20), -- B表姓名 @B_Remark NVARCHAR(4000) -- B表備注 AS BEGIN TRY BEGIN TRAN -- 在A表中插入數(shù)據(jù) INSERT INTO [dbo].[A] ( [A_Name] , [A_Remark] ) VALUES ( @A_Name , @A_Remark ) -- 在B表中插入數(shù)據(jù) INSERT INTO [dbo].[B] ( [A_ID] , [B_Name] , [B_Remark] ) VALUES ( @@IDENTITY -- 返回最后插入的標識值 , @B_Name , @B_Remark ) COMMIT TRAN END TRY BEGIN CATCH ROLLBACK TRAN INSERT INTO [dbo].[ErrorLog] ( [EL_Procedure] -- 異常存儲過程名稱 , [EL_OperateTime] ) -- 報異常時間 VALUES ( 'TEST_PROC' , CONVERT(DATETIME,GETDATE(),20) ) END CATCH 注:1. @@IDENTITY的作用是返回最后插入的標識值。 2. 我在rollback tran中加入一個專門記錄異常的表,以便產于異常發(fā)生的時間和確定報異常的存儲過程的名稱。 原文鏈接: begin tran 可以理解成新建一個還原點。 commit tran提交這個自begin tran開始的修改 rollback tran 表示還原到上個還原點。?
轉載于:https://www.cnblogs.com/hushzhang/p/7520118.html
總結
以上是生活随笔為你收集整理的SQL事务用法begin tran,commit tran和rollback tran的用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jquery对象和dom对象获取html
- 下一篇: 41.栈