SQL Server 2008 R2 Management Studio调试:如何突破异常?

时间:2013-05-20 18:26:13

标签: sql-server-2008 debugging ssms

在Visual Studio 2008中,我可以使用CTRL + D + E进行选择,以使调试器在异常点中断,无论是否有catch块。

enter image description here

在SQL Server 2008 R2 Management Studio中是否存在类似的选项,其中存储过程执行将在抛出错误时中断?

1 个答案:

答案 0 :(得分:0)

使用try来捕获事务。例如:

create proc procexmaple (@parameter int)
as
    begin try
        begin transaction
            select  * from Employees where LastName = @parameter --this is an error converting nvarchar to int
        commit transaction
    end try

    begin catch
        select  * from [Orders] where OrderID = @parameter -- the catch will work and this will run
        rollback
    end catch
go

如果您要建立自己的错误,还可以查看如何使用raiserror:

https://www.sqlservertutorial.net/sql-server-stored-procedures/sql-server-raiserror/