本帖最后由 sun11yan 于 2011-05-26 22:22:38 编辑

解决方案 »

  1.   

    IF (SUBSTR(varLeft,i,1)<'0') OR SUBSTR(varLeft,i,1)>'9') THEN
    如果是数字的话直接比较不更好吗? 字符串一般不这么比较的......
      

  2.   

     LOOP
      IF (SUBSTR(varRight,i,1)<'0' OR SUBSTR(varRight,i,1)>'9') THEN
      RAISE myError;
      exit;
      END IF;
      END LOOP;这种写法对吗?loop中退出循环不是用exit when (1>2)这样的格式吗
      

  3.   

    使用show errors;命令看看到底是报的什么错
      

  4.   

    触发器不知道怎么SHOW ERROR因为要满足触发条件触发器才被触发,但是触发其本身就无效且未通过重新验证,所以SHOW ERROR不了。也可能是我SHOW ERROR的方法错了请大家帮帮忙怎么个SHOW ERROR法谢谢了!错误提示如下:
    警告: 创建的触发器带有编译错误。
      

  5.   

    你的plsql是什么版本
    在左边导航树上选中你的触发器 右键查看 如果有错的话 会有提示的
      

  6.   

    IF (SUBSTR(varLeft,i,1)<'0') OR SUBSTR(varLeft,i,1)>'9') THEN
    这个语句中括号不匹配汗死了第一次出现的地方不匹配 第二次出现的地方是好的
    楼主还要细心些才是阿
      

  7.   

    谢谢了,真的是括号不匹配。我用的是ISQLPLUS,有些错误提示很不清楚,就像这个问题一样请问一下你们一般都用什么版本的啊,有错误提示的吗?
      

  8.   

    pl/sql developer
    这个版本还是不错的 还可以单步调试