【SQLSERVER】事务相关存储过程Demo

来源:互联网 发布:手机淘宝账号怎么激活 编辑:程序博客网 时间:2024/05/16 07:24
--事务相关存储过程Demo-------------Test Table Createcreate table testbzm(id int primary key,val varchar(10))--------------Procedure about Transaction--simple Testcreate proc instestbzm  -- create procedure=create proc( @id1 int, @val1 varchar(10), @id2 int, @val2 varchar(10))as BEGINinsert into testbzm(id ,val) values(@id1,@val1)insert into testbzm(id ,val) values(@id2,@val2)ENDexec instestbzm 2,'hHEHE',1,'WAWA'exec instestbzm 3,'hHEHE',1,'WAWA'exec instestbzm 4,'hHEHE',1,'WAWA'select * from testbzm/*1   WAWA2   hHEHE3   hHEHE4   hHEHE*/--整个proc非一个事务,一个INSERT是一个隐式事务truncate table testbzmdrop proc instestbzm--需求完整实现create proc instestbzm  -- create procedure=create proc( @id1 int, @val1 varchar(10), @id2 int, @val2 varchar(10))as BEGINBEGIN TRY      SET NOCOUNT ON; --Trans 优化    SET TRANSACTION ISOLATION LEVEL read uncommitted;--允许脏读BEGIN TRAN  insert into testbzm(id ,val) values(@id1,@val1)insert into testbzm(id ,val) values(@id2,@val2)COMMIT TRAN  PRINT '事务提交'  END TRY  BEGIN CATCH  ROLLBACK;  PRINT '事务回滚'; END CATCH  ENDexec instestbzm 2,'hHEHE',1,'WAWA'exec instestbzm 3,'hHEHE',1,'WAWA'exec instestbzm 4,'hHEHE',1,'WAWA'select * from testbzm/*1   WAWA2   hHEHE*/--Cleardrop table testbzmdrop proc instestbzm
0 0