SQL Server出现异常编码解决的深层次解读
  • 作者:admin
  • 发表时间:2020-11-05 07:50
  • 来源:未知

本文关键给大伙儿详细介绍了有关SQL Server出现异常编码解决的相关资料,原文中根据实例编码详细介绍的十分详尽,对大伙儿的学习培训或是工作中具备一定的参照学习培训使用价值,必须的小伙伴们下边来一起学习了解一下吧

序言

SQL Server应用TRY...CATCH 构造完成TSQL句子的处理错误,TRY指令承担监管句子实行的状况,如果有TSQL句子产生出现异常,而且比较严重等级(Severity Level)超过10,而且低于20,那麼CATCH指令会捕捉到出现异常的不正确。

BEGIN TRY
   { sql_statement | statement_block }
END TRY
BEGIN CATCH
   [ { sql_statement | statement_block } ]
END CATCH

后端开发技术工程师必须把一条或好几条句子载入到TRY代码块中,假如TRY代码块中的编码在实行全过程中产生不正确,那麼在不正确产生的点以后的编码已不实行,程序流程的决策权迁移到CATCH代码块块中。假如TRY代码块沒有产生不正确,那麼不容易实行CATCH代码块,程序流程的决策权迁移到END CATCH以后的句子。

留意,在CATCH代码块中捕捉的出现异常不容易回到给启用程序流程,假如必须把不正确信息回到给启用程序流程,必须在CATCH代码块中应用THROW(或RAISERROR,不强烈推荐应用)指令显式抛出去不正确。

一,获得出现异常信息

在TSQL中,应用TRY和 CATCH撰写错误处理代码块,在CATCH子句中,应用下列涵数,可以获得出现异常产生时的信息内容。

--回到产生不正确的编码行号(LineNumber)
ERROR_LINE ( )
--回到不正确号(ErrorNumber)
ERROR_NUMBER ( )
@@ERROR
--回到不正确信息(ErrorMessage)
ERROR_MESSAGE ( )
--回到产生不正确的SP Name
ERROR_PROCEDURE ( )
--回到不正确的比较严重度(Error Severity)
ERROR_SEVERITY ( )
--回到不正确的情况(Error State)
ERROR_STATE()

SQL Server抛出去的一个不正确,一般包含错误码(Error Number)、比较严重等级(Severity Level)、不正确情况(Error State)和不正确信息(Error Message)等信息内容。

1,错误码

错误码,能够由自变量@@ERROR 和函数ERROR_NUMBER()得到 ,用以回到上一条句子的错误码,该编码唯一标志该不正确。

2,不正确的比较严重等级

不正确的比较严重程序流程(Severity Level)现有24个等级,说明SQL Sever碰到难题的种类,Severity Level是一个int类型,能够由涵数ERROR_SEVERITY() 回到,标值越大,表明难题越比较严重。

依照不正确系统对的危害程序流程,把比较严重等级分成四组:

0-10:信息内容,能够觉得是warning

11-16:不正确,是客户编码造成 的

17-19:十分比较严重的不正确,只有由网站管理员来恢复