实例一
Create PROCEDURE [dbo].[tt2]
As
Begin
Begin Transaction
Update dbo.storeA Set Aid = 7 Where Aname ='N73'
Update dbo.storeA Set Aid = 9 Where Aname ='N97'
Insert Into dbo.storeA(Aid) Values('sdfs') --此语句将出错,LockTypeID为Int类型
Update dbo.storeA Set Aid = 8 Where Aname ='N95'
Commit Transaction
If(@@ERROR <> 0)
Rollback Transaction
End
实例二
Declare @id int
BEGIN TRANSACTION
Insert into xxxxxTable(f1,f2)values(@a,@b)
Select @id=@@identity
Insert into abcTable(ff1,ff2,ff3)values(@c,@id,@dd)
IF @@error <> 0 --发生错误
BEGIN
ROLLBACK TRANSACTION
RETURN 0
END
ELSE
BEGIN
COMMIT TRANSACTION
RETURN 1 --执行成功
END
参考资料: 存储过程中使用事务Transaction http://www.studyofnet.com/news/551.html