浅析SQL存储过程和事务处理

436 查看

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

解决方案如下: 大概都是这样处理的:

复制代码 代码如下:

CREATE PROC RegisterUser
(@usrName varchar(30), @usrPasswd varchar(30),@age int, @PhoneNum varchar(20), @Address varchar(50) )
AS
BEGIN

BEGIN TRAN -- 显示定义并开始一个事务
SET XACT_ABORT ON -- 表示遇到错误立即回滚

INSERT INTO USER(userName,userPasswd) values(@usrName,@usrPasswd)

IF @@error <> 0  --发生错误
BEGIN
   ROLLBACK TRANSACTION
   RETURN 0
END
ELSE
BEGIN
   COMMIT TRANSACTION
   RETURN 1    --执行成功
END

END


够简洁!