操作说明:
我在VC程序中对B表进行删除记录的操作,B表的触发器触发对A表记录的删除操作,发生错误时直接在触发器中用RAISE_APPLICATION_ERROR抛出异常信息,以下是具体的错误信息:[ORACLE][ODBC][ORA][ORA-20001]:新增交接设备出错!
ORA-06512:在 "user01.A_AD",line 46
ORA-04088:触发器 "user01.A_AD"执行过程中出错
ORA-06512:在 "user01.B_AD",line 62
ORA-04088:触发器 "user01.B_AD"执行过程中出错问题描述:
我能不能让错误信息显示给用户的时候更友好一些,只是显示我自定义的错误信息,即【新增交接设备出错!】,用RAISE_APPLICATION_ERROR可以实现吗?参数当如何设置?(前提:错误信息在触发器中抛出)。 用户反应得厉害,限期改造,跪谢!

解决方案 »

  1.   

    VC里捕捉下异常,再提示,这可不是应该在RAISE_APPLICATION_ERROR里实现的内容
      

  2.   

    你看看sqlcode相关内容,能在vc里判断。
      

  3.   

    怎么没人睬啊?!呜呜呜呜。或者说 oracle 中有没有 类似vc中 的messagebox的函数,只弹出自己定制的消息?!谢先
      

  4.   

    RAISE_APPLICATION_ERROR(error_num, v_mess, TRUE); error_num在-20000到-20999之间,然后在vc中判断下一异常的num是否是在RAISE_APPLICATION_ERROR中设置的异常。