SQL Server2012中的Throw语句

    SQL SERVER2012实现C#抛出异常的Throw句。相比SQLServer2005之前使用@@ERROR,SQLServer2005之后使用RAISERROR()异常都是一个不小的步,下面来看一下Throw的用法。

 

RAISERRORTHROW

    SQL Server2005/2008中,使用RAISERRORTRY…CATCH句来抛出异常相比根据@@ERROR行判断来经进步了很多。但是使用RAISERROR有一个非常不好的一点是无法返回真正出的行数。如1所示。

   

    1.使用RAISERROR返回错误行数不正确

 SQL Server2012中的Throw语句_第1张图片

    而如果我需要具体的错误信息,可能需要么写,如2所示。

   

    2.错误信息写法比

 SQL Server2012中的Throw语句_第2张图片

    而使用SQL SERVER2012新增的THROW句,则变简单很多。并且能正确返回出的行,于比较长T-SQL句来这节省了不少时间,如3所示。

   

    3.THROW正确返回出行和出信息

 SQL Server2012中的Throw语句_第3张图片

    也可以THROW句指定参数来返回自定义错误信息,但不能再标识出正确的错误行,如4所示。

    SQL Server2012中的Throw语句_第4张图片

    4.THROW句指定参数

 

   

    因此使用THROW句可以来如下好

    1.简洁优雅的代

    2.可以正确的标识出出的行数,于大量T-SQL点可以省不少时间

 

 

你可能感兴趣的:(SQL Server2012中的Throw语句)