SQL存储过程和事务处理

在数据库编程中,事务是经常需要用到的技术,在.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

 

够简洁!

posted @ 2010-08-31 17:30  类型安全的心  阅读(455)  评论(0编辑  收藏  举报