千家信息网

SQL存储过程中使用BEGIN TRY捕捉错误并保存

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,1、创建保存错误的数据表:/*创建错误日志表*/CREATE TABLE ErrorLog( errNum INT
千家信息网最后更新 2025年11月07日SQL存储过程中使用BEGIN TRY捕捉错误并保存

1、创建保存错误的数据表:

/*创建错误日志表*/CREATE TABLE ErrorLog(                                            errNum INT,                                            ErrSev NVARCHAR(500),                                            ErrState INT,                                            ErrProc NVARCHAR(1000),                                            ErrLine INT,                                             ErrMsg NVARCHAR(2000)                                            )

2、创建保存错误信息的存储过程:

/*创建错误日志记录存储过程*/CREATE PROCEDURE InsErrorLogAS BEGIN        INSERT INTO ErrorLog              SELECT  ERROR_NUMBER() AS ErrNum,                             ERROR_SEVERITY()AS ErrSev,                             ERROR_STATE() AS ErrState,                             ERROR_PROCEDURE() AS ErrProc,                             ERROR_LINE()AS ErrLine,                             ERROR_MESSAGE()AS ErrMsg END

3、在存储过程中使用BEGIN TRY,并捕捉错误保存:

CREATE PROCEDURE GetErrorTestASBEGIN TRY   /*在这里填写存储过程的内容*/     ***END TRYBEGIN CATCH    EXEC InsErrorLog --调用 InsErrorLog 存储过程,保存错误日志END CATCH 
0