为什么执行存储过程,却捕捉不到存储过程里的异常

为什么执行存储过程,却捕捉不到存储过程里的错误?存储过程:create procedure test asselect RegionId into

为什么执行存储过程,却捕捉不到存储过程里的错误?
存储过程:

create procedure test as
  select RegionId into #a from region

  insert into #a(RegionId)
  select m.RegionId from #a

程序调用:
Public Function test() As Boolean
  On Error GoTo ex
  PublicConn.Execute "exec northwind.dbo.test"
  Exit Function
ex:
MsgBox err.Description
End Function


上面竟然捕捉不到存储过程里的错误,本来存储过程里 m.RegionId 这里有错误,没有别名的,但调试VB代码时,并没有跳到 ex,而是正常执行,

我打印 err.Number,是0,但用 publicconn.Errors ,可以看到错误。
为什么啊,要怎样才能捕捉到这种错误?
这种东西是害死人的呢,


[解决办法]
这个捕捉不到的。
可以在存储过程的return。
比如 0 = successful
-1 = error

[解决办法]
存储过程中哦能,什么数据库,建议到对应的板块问。