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

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

创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的青海网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

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

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

/*创建错误日志记录存储过程*/
CREATE PROCEDURE InsErrorLog
AS 
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 GetErrorTest
AS
BEGIN TRY
   /*在这里填写存储过程的内容*/
     ***
END TRY
BEGIN CATCH
    EXEC InsErrorLog --调用 InsErrorLog 存储过程,保存错误日志
END CATCH 

网页名称:SQL存储过程中使用BEGINTRY捕捉错误并保存
本文来源:http://scyanting.com/article/gpgdcs.html