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