1.uses @@error global variable
if @@error = 0 is right else error2.I want know too

解决方案 »

  1.   

    用@@ERROR,它返回最后执行的 Transact-SQL 语句的错误代码。
      

  2.   

    如果你的sql中有rollback的話,當前事務將變為0,所以程序也就結束了。
    sql用事務控制,所以在trigger中不要產生rollback,如果你不能修改tigger的話,我想沒有辦法.
      

  3.   

    如果是SQL SERVER的工具调用时可以用@@error进行判断如果是PB等工具调用时最好不要用@@error进行判断,因为在PB等工具中总是返回sqlcode=-1且错误信息也不是自己定制的,此时只好用rollback将整个过程的操作回滚