【发布时间】:2009-07-10 19:25:59
【问题描述】:
Try-Catch 会捕获@@ERROR 可以捕获的所有错误吗?在下面的代码片段中,检查@@ERROR 是否值得? RETURN 1111 会发生吗?
SET XACT_ABORT ON
BEGIN TRANSACTION
BEGIN TRY
--do sql command here <<<<<<<<<<<
SELECT @Error=@@ERROR
IF @Error!=0
BEGIN
IF XACT_STATE()!=0
BEGIN
ROLLBACK TRANSACTION
END
RETURN 1111
END
END TRY
BEGIN CATCH
IF XACT_STATE()!=0
BEGIN
ROLLBACK TRANSACTION
END
RETURN 2222
END CATCH
IF XACT_STATE()=1
BEGIN
COMMIT
END
RETURN 0
【问题讨论】:
标签: sql-server sql-server-2005 tsql