【发布时间】:2012-09-12 10:19:23
【问题描述】:
我编写了一个在相同特定条件下引发错误的存储过程。当我使用 sqlcommand 使用 vb.net 代码调用此存储过程时,我无法捕获 RAISEERROR
存储过程
Create sp_UPDATE
as
begin
IF @QTY > @ReqAlloQty
BEGIN
RAISERROR('Product Quantity should not be more than Required qty.',16,1)
goto EXITWITHERROR
END
end
VB.NET
Try
m_commDBcommand.ExecuteNonQuery()
Catch ex As Exception
Finally
End Try
存储过程条件匹配时不会引发异常。
任何帮助将不胜感激
【问题讨论】:
-
也许更多的代码示例可能会鼓励人们回答?目前,您似乎没有在异常处理程序中处理任何内容,因此调用应用程序会忽略它吗?我还建议(作为第一步)在您的 sp_UPDATE 中实现一个 try-catch-print-throw 子句,以确保您实际上将异常抛出回应用程序?
标签: asp.net sql-server vb.net