百分救助,store procedure里的error handling!!!在线等!!!!!

jzhan 2006-02-03 09:25:38
比如,在procedure1里循环调用了另一个procedure2.
procedure2在run的时候会有error.
在Query Analyzer里手动run没有问题,Query Analyzer会return error msg,然后继续run先去.
但把procedure1做成sql job后遇到error后job会被中断.
在sql里有什么类似于"On Error Goto"之类的语句吗??
...全文
78 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsqkeke 2006-02-03
  • 打赏
  • 举报
回复
@@ERROR 在你认为会出现错误的地方都用上
即时检查错误并处理
zheninchangjiang 2006-02-03
  • 打赏
  • 举报
回复
由于 @@ERROR 在每一条语句执行后被清除并且重置,应在语句验证后立即检查它,或将其保存到一个局部变量中以备事后查看。
zheninchangjiang 2006-02-03
  • 打赏
  • 举报
回复
有的
goto label

label:
statements
jzhan 2006-02-03
  • 打赏
  • 举报
回复
先谢谢楼上的,仁兄
其实我也想更正错误,但用户经常会有一点有奇思妙想是值填近来的.
还有能贴个具体的用法嘛,比如if @@ERROR 的使用位置
lsqkeke 2006-02-03
  • 打赏
  • 举报
回复
GOTO 语句使 Transact-SQL 批处理的执行跳转到标签。不执行 GOTO 语句和标签之间的语句。使用下列语法定义标签名:

label_name:

尽量少使用 GOTO 语句。过多使用 GOTO 语句可能会使 Transact-SQL 批处理的逻辑难于理解

if @@ERROR <> 0
goto a

a : --程序代码
lsqkeke 2006-02-03
  • 打赏
  • 举报
回复
你还是检查错误 更正才是硬道理 :)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧