xiayule 2005年05月25日
关于前台捕捉后台procedure, trigger返回的错误
1、procedure中有print ''调试信息时,
print 'haah'
....
if @@error> 0
goto lerr
.....

lerr:
RaiseError("Error ocured",16,1)
在这种情况下,捕捉不到错误,因为输出信息为:
haah
Error ocured
前台能捕捉的err.message 是 haah,而不是Error ocured
解决方法:前面加上set nocount on 或者去掉调试信息
2、假如一次性要写入一个表两条记录,该表有触发器,第一条记录写入成功!第二条写入时,触发器发生错误,我已经在插入语句和trigger前都加入set nocount on , 结果输入信息为:
(空行)
Error ocured
捕捉不到错误,错误信息为空。
请高手帮忙,以前好像看过这方面的文章,但记不清楚,不知道ms是如何处理这些输出的东东的?多谢!

...全文
28 点赞 收藏 2
写回复
2 条回复

还没有回复,快来抢沙发~

发动态
发帖子
MS-SQL Server
创建于2007-09-28

1.4w+

社区成员

25.3w+

社区内容

MS-SQL Server相关内容讨论专区
社区公告
暂无公告