Sql server 从vb.net调用具有已知错误的存储过程的错误处理

Sql server 从vb.net调用具有已知错误的存储过程的错误处理,sql-server,vb.net,error-handling,.net-1.0,Sql Server,Vb.net,Error Handling,.net 1.0,我有sql Server 2000加密存储过程。我不能修改它们。通常,所有的过程都使用游标等来逐行操作不同的表 当在queryanalyzer屏幕上执行存储过程时,我看到错误被抛出,但过程将继续,直到所有记录都被处理完毕。客户可以接受这种行为 我现在需要使用VB.net 2002 windows应用程序自动执行此过程。我从vb.net调用该过程,但当存储过程中出现错误时,程序会抛出运行时错误 有谁能指导我如何处理和编程错误处理,以便继续处理,直到处理完所有记录。我将非常感谢您的帮助。我不知道如何

我有sql Server 2000加密存储过程。我不能修改它们。通常,所有的过程都使用游标等来逐行操作不同的表

当在queryanalyzer屏幕上执行存储过程时,我看到错误被抛出,但过程将继续,直到所有记录都被处理完毕。客户可以接受这种行为

我现在需要使用VB.net 2002 windows应用程序自动执行此过程。我从vb.net调用该过程,但当存储过程中出现错误时,程序会抛出运行时错误


有谁能指导我如何处理和编程错误处理,以便继续处理,直到处理完所有记录。我将非常感谢您的帮助。

我不知道如何在.Net 1.0中做到这一点


在2.0及更高版本中,我将连接的FireInfoMessageEventOnUserErrors属性设置为True,并处理`InfoMessage事件。但是对MSDN的快速检查显示,它们分别在和之前不可用。

因为存储过程是加密的,您无法修改它。一个选项是创建另一个存储过程作为加密过程的包装器

例如。。。伪TSQL

CREATE PROCEDURE MyWrapperProc
(
   @MyParameters somedatatypes
)
EXEC MyEncrytedStoreProc @MyParameters

然后使用包装程序更改VB.NET调用。SQL 2000中没有TRY-CATCH。我认为,除非您明确提出错误,否则这应该允许加密的进程运行,而不会导致错误冒泡到您的VB.NET代码。

错误仍然会冒泡,无论嵌套级别如何,它都会直接进入客户端连接。只有2k5 try/catch可以改变这一点。