易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle存储过程的动态游标出错 - Oracle / 开发

create or replace procedure prc
AS
sqlstr varchar2(3000);
type resultcur is ref cursor;
begin
sqlstr := ‘select * from table名 where 条件’;
open resultcur for sqlstr; ---此处报错
......
end prc;

Compilation errors for PROCEDURE PRC
Error: PLS-00330: invalid use of type name or subtype name
Line: 148
Text: open resultcur for sqlstr;

请问大侠们,这是什么错误,怎么解决,请赐教!
SQL code:
-- 给个例子给你,自己看着办吧:

-----------------------------------------------------------------------------
create or replace package pkg_emp_info
as
type myrctype is ref cursor;
procedure emp_info_proc(v_empno in number default 0,v_ename in VARCHAR2, v_deptno number default 0,p_rc out myrctype);
end pkg_emp_info;
/

create or replace package body pkg_emp_info
as
procedure emp_info_proc(v_empno in number default 0,v_ename in VARCHAR2, v_deptno number default 0,p_rc out myrctype)
is
sqlstr VARCHAR2(2000);
begin

sqlstr :=
'SELECT * from emp e where 1=1';

if v_empno<>0 then
sqlstr := sqlstr||' and e.empno='||v_empno;
end if;

if v_ename<>'' then
sqlstr := sqlstr||' and e.ename like ''%||v_ename||%''';
end if;

if v_deptno<>0 then
sqlstr := sqlstr||' and e.deptno='||v_deptno;
end if;


相关问答:

oracle spatial空间函数出错 - Oracle / 高级技术

在执行包的时候引用oracle spatial空间函数出错,出错情况如下
Errors in file
/user/oracle/app/oracle/admin/grid/udump/grid1_ora_143768.trc: ORA-29902:
error in executing ODCIIndexStart() routine ORA-0 ......

oracle与aix - Oracle / 高级技术

在系统运行的时候总是有一块磁盘始终闪红灯,进入系统后
#topas查看总是有一块磁盘%BUSY为90%以上,
数据库版本:oracle 9.2.0.7 
数据文件挂载的节点:/oradata/pcs/ 逻辑卷号lv04 
#lslv -l lv04 ......

[原创] ORACLE 连接字串 - Oracle / 非技术区

假设table01 中有 以下资料
emp_no emp_name
------- ------------
0001 TOM
0002 JOHN
0003 MARY
常用电话 
而我们要得到以下的OUTPUT (或是各种其他的output)
0001,TOM
0002,JOHN ......