电脑技术学习

存储过程中如何使用事务

dn001

在数据库编程中,事务是经常需要用到的技术,在.net平台上,事务处理是非常好用的,但是在Sql Server数据库的存储过程中如何使用事务来完成数据的批量操作呢?
解决方案如下:

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