在數據庫編程中,事務是經常需要用到的技術,在.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
夠簡潔!