SQL server 事務實例


 簡單的SQLserver事務實例:

執行SQL 組合操作A、操作B,只有AB都執行成功時才提交事務,否則回滾事務。

 測試數據表:

--1.數據表A
CREATE TABLE A(
A1 VARCHAR(10)
,A2 VARCHAR(10)
);
INSERT INTO A(A1,A2) VALUES ('00001','soulsjie');

--2.數據表B
CREATE TABLE B(
B1 VARCHAR(10)
,B2 VARCHAR(100)
);
INSERT INTO B(B1,B2) VALUES ('6666','b0001');
INSERT INTO B(B1,B2) VALUES ('666','b0002');

 

 事務實例:

--SQL server事務
BEGIN TRAN UpdateAandB --創建事務
	DECLARE @AJIEGUO INT ,@BJIEGUO INT
	UPDATE A SET A1='12345678910'; --操作A
	SET @AJIEGUO=@@ERROR;		   --操作A的執行狀態碼,0表示執行成功

	UPDATE B SET B2='soulsjieT'    --操作B
	SET @BJIEGUO=@@ERROR;		   --操作B的執行狀態碼,0表示執行成功
	PRINT @BJIEGUO;

	IF(@AJIEGUO+@BJIEGUO=0)		   --只有操作A、操作B都成功執行時才提交事務
		COMMIT TRAN UpdateAandB;
	ELSE 
		ROLLBACK  TRAN UpdateAandB;--操作A或操作B有任何一個執行失敗時回滾事務

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM