zoukankan      html  css  js  c++  java
  • PLS00357: Table,View Or Sequence reference not allowed in this context

    PLS-00357: Table,View Or Sequence reference 'string' not allowed in this context
        Cause: A reference to database table, view, or sequence was found in an inappropriate context. Such references can appear only in SQL statements or (excluding sequences) in %TYPE and %ROWTYPE declarations. Some valid examples follow: SELECT ename, emp.deptno, dname INTO my_ename, my_deptno, my_dept .FROM emp, dept WHERE emp.deptno = dept.deptno; DECLARE last_name emp.ename%TYPE; dept_rec dept%ROWTYPE;
        Action: Remove or relocate the illegal reference.

    BEGIN
      FOR i IN 1 .. 984 LOOP
        EXECUTE IMMEDIATE 'INSERT INTO OSM_DML_3SP.OSM_TAB_SEQUENCE(COL_0) VALUES(:1)'
           USING OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL;
      END LOOP;
      INSERT INTO OSM_DML_3SP.OSM_TAB_SEQUENCE(COL_0)
            VALUES(OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.CURRVAL-45);
    END;
    /

    SQL> @/tmp/a
           USING OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL;
                                                  *
    ERROR at line 4:
    ORA-06550: line 4, column 47:
    PLS-00357: Table,View Or Sequence reference
    'OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL' not allowed in this context
    ORA-06550: line 3, column 5:
    PL/SQL: Statement ignored

    Error use:
    t := OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL; 

    Correct use:
    SELECT OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL INTO t FROM dual;

    >>>---
    DECLARE
      t NUMBER;
    BEGIN
      FOR i IN 1 .. 984 LOOP
        SELECT OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.NEXTVAL INTO t FROM dual;
        EXECUTE IMMEDIATE 'INSERT INTO OSM_DML_3SP.OSM_TAB_SEQUENCE(COL_0) VALUES(:1)'
           USING t;
      END LOOP;
      INSERT INTO OSM_DML_3SP.OSM_TAB_SEQUENCE(COL_0)
            VALUES(OSM_DML_3SP.OSM_TAB_SEQUENCESEQ9.CURRVAL-45);
    END;

    记得函数中有COMMIT, ROLLBACK时也不可以直接用的, 真要好好注意, 感觉使用起来很怪!
    FUNCTION 中含有Commit, rollback 出错的情况请看:http://blog.chinaunix.net/u/19782/showart.php?id=242108

    转自:http://www.cublog.cn/u/19782/showart_244840.html

  • 相关阅读:
    哈夫曼
    P1631序列合并
    PAT Mice and Rice
    ybt 1356 计算(calc)
    P2947 Look Up S
    electron主进程与渲染进程的通信方式
    自定义BufferedReader
    小程序云数据库查询数据用在其它任意地方(完美解决)
    html+js实现微信跳转遮罩层
    Java创建属于自己的二维码(完整版)
  • 原文地址:https://www.cnblogs.com/freewater/p/2057272.html
Copyright © 2011-2022 走看看