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;
相关问答:
假设table01 中有 以下资料
emp_no emp_name
------- ------------
0001 TOM
0002 JOHN
0003 MARY
常用电话
而我们要得到以下的OUTPUT (或是各种其他的output)
0001,TOM
0002,JOHN
......
oracle 通过BDlink 连接到一台MS SQL,查询都可以,但是不知道如何在oracle通过DBLink调用MS SQL的存储过程,求解~谢谢~
引用
oracle 通过BDlink 连接到一台MS SQL,查询都可以,但是不知道如何在oracle通过DBLink调用M ......
oracle函数如下:
create or replace function P_WEB_GETCITYID
(
p_mobileNumber in VARCHAR2,
p_cityid out NUMBER
) Return NUMBER
IS
p_areacode varc ......
1.现在系统是64位的server2003(web服务器IIS6.0)装的是10g的oracle客户端。
2.数据库服务器同样是32位的server2003的oracle10g。
3.web服务器上用sqlplus访问数据库-正常;
vs2008内部建立数据源,访问 ......