我无法使用 THROW SQL Server 2008 R2 [英] I am unable to use THROW SQL Server 2008 R2
本文介绍了我无法使用 THROW SQL Server 2008 R2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
SQL Server 2008 R2 Management Studio 无法识别我在下面的示例中抛出的内容,它说
SQL Server 2008 R2 Management Studio does not recognized my throw in the below example, it says
Throw 附近的语法错误
incorrect syntax near Throw
我试图在这里抛出一个错误,所以当有人两次插入相同的值时,我可以在我的网站中处理它.
I am trying to throw an error here, so I can handled it in my website when someone insert the same value twice.
Begin Try
insert into BusinessID (BusinessID) values (@ID)
insert into BusinessID (BusinessID) values (@ID)
End Try
Begin Catch
Print 'PK already exist'
THROW
End Catch
推荐答案
THROW
语句是在SQL Server 2012
http://msdn.microsoft.com/en-us/library/ee677615.aspx一个>
您可以使用 RAISERROR
代替.
http://msdn.microsoft.com/en-us/library/483588bd-021b-4eae-b4ee-216268003e79(v=sql.105)
BEGIN CATCH
DECLARE @ErrorMessage NVARCHAR(4000);
DECLARE @ErrorSeverity INT;
DECLARE @ErrorState INT;
SELECT
@ErrorMessage = ERROR_MESSAGE(),
@ErrorSeverity = ERROR_SEVERITY(),
@ErrorState = ERROR_STATE();
RAISERROR (@ErrorMessage, -- Message text.
@ErrorSeverity, -- Severity.
@ErrorState -- State.
);
END CATCH;
这篇关于我无法使用 THROW SQL Server 2008 R2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文