-
StackOverflow 文件
-
Microsoft SQL Server 教程
-
事務處理
-
具有錯誤處理的基本事務框架
BEGIN TRY -- start error handling
BEGIN TRANSACTION; -- from here on transactions (modifictions) are not final
-- start your statement(s)
select 42/0 as ANSWER -- simple SQL Query with an error
-- end your statement(s)
COMMIT TRANSACTION; -- finalize all transactions (modifications)
END TRY -- end error handling -- jump to end
BEGIN CATCH -- execute this IF an error occured
ROLLBACK TRANSACTION; -- undo any transactions (modifications)
-- put together some information as a query
SELECT
ERROR_NUMBER() AS ErrorNumber
,ERROR_SEVERITY() AS ErrorSeverity
,ERROR_STATE() AS ErrorState
,ERROR_PROCEDURE() AS ErrorProcedure
,ERROR_LINE() AS ErrorLine
,ERROR_MESSAGE() AS ErrorMessage;
END CATCH; -- final line of error handling
GO -- execute previous code