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;
执行出错。错在哪里呀?
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;
执行出错。错在哪里呀?
OPEN p_rc FOR SELECT fpass,fname FROM adminuser;
有问题
楼上说的那句有什么问题呢???
FUNCTION f_RE_RESULTS RETURN T_CURSOR
这里的CREATE OR REPLACE PACKAGE BODY PKG_RESULTS AS删掉
去掉,二是要声明游标为返回游标,再不行就把IS改为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 /没错阿!哪里出错?
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.