CREATE OR REPLACE PACKAGE PKG_RESULTS AS
  TYPE T_CURSOR IS REF CURSOR;
  FUNCTION f_RE_RESULTS RETURN T_CURSOR;
END PKG_RESULTS;CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS
  FUNCTION f_RE_RESULTS RETURN T_CURSOR
  IS
    p_rc t_cursor;
  BEGIN
    OPEN p_rc FOR SELECT fpass,fname FROM adminuser;
    RETURN p_rc;
  END f_RE_RESULTS;
END PKG_RESULTS;
执行出错。错在哪里呀?

解决方案 »

  1.   

    应该是
    OPEN p_rc FOR SELECT fpass,fname FROM adminuser;
    有问题
      

  2.   

    我是用pl/sql来建的。提示是:pls-0013:出现符号“CREATE”
    楼上说的那句有什么问题呢???
      

  3.   

    CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS
      FUNCTION f_RE_RESULTS RETURN T_CURSOR
    这里的CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS删掉
      

  4.   

    不好意思,看错了,可能有几个,1是把RETURN p_rc;
    去掉,二是要声明游标为返回游标,再不行就把IS改为AS试试
      

  5.   

    PEN p_rc FOR SELECT fpass,fname FROM adminuser;
    这句有问题哦
    你从游标里面把数据选出来,不要插入进去吗?
      

  6.   

    SQL> CREATE OR REPLACE PACKAGE PKG_RESULTS AS
      2    TYPE T_CURSOR IS REF CURSOR;
      3    FUNCTION f_RE_RESULTS RETURN T_CURSOR;
      4  END PKG_RESULTS;
      5  /Package created.SQL> CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS
      2    FUNCTION f_RE_RESULTS RETURN T_CURSOR
      3    IS
      4      p_rc t_cursor;
      5    BEGIN
      6      OPEN p_rc FOR SELECT * FROM dual;
      7      RETURN p_rc;
      8    END f_RE_RESULTS;
      9  END PKG_RESULTS;
     10  /没错阿!哪里出错?
      

  7.   

    SQL> CREATE OR REPLACE PACKAGE PKG_RESULTS AS
      2    TYPE T_CURSOR IS REF CURSOR;
      3    FUNCTION f_RE_RESULTS RETURN T_CURSOR;
      4  END PKG_RESULTS;
      5  /Package created.SQL> CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS
      2    FUNCTION f_RE_RESULTS RETURN T_CURSOR
      3    IS
      4      p_rc t_cursor;
      5    BEGIN
      6      OPEN p_rc FOR SELECT * FROM dual;
      7      RETURN p_rc;
      8    END f_RE_RESULTS;
      9  END PKG_RESULTS;
     10  /Package body created.SQL> show error
    No errors.