存储过程中如何获取错误信息
存储过程中如何获取错误信息SQL SERVER中提供了很多系统函数,让我们方便在存储过程中获取详细的错误信息。
ERROR_LINE():返回出现错误的行号
ERROR_MESSAGE():返回出现错误的详细信息
ERROR_NUMBER() :返回错误号
ERROR_PROCEDURE():返回出现错误的存储过程或触发器的名称。如果在存储过程或触发器中未出现错误,该函数返回 NULL
ERROR_SEVERITY() :返回严重性
ERROR_STATE():返回状态
存储过程获取错误信息实例
DECLARE @test_val INT;
BEGIN TRY
-- 导致一个除零错误
SET @test_val = 1024 / 0;
PRINT(STR(@test_val));
END TRY
BEGIN CATCH
PRINT('错误代码 = ' + STR(ERROR_NUMBER()));
PRINT('错误严重级别 = ' + STR(ERROR_SEVERITY()));
PRINT('错误状态代码 = ' + STR(ERROR_STATE()));
PRINT('错误信息 = ' + ERROR_MESSAGE());
END CATCH
go
返回结果