【发布时间】:2015-11-12 14:58:37
【问题描述】:
我在 oracle 中有 sp。我的SP如下图
create or replace
PROCEDURE GETMONITORING
(
v_namabarang in varchar2 default null,
v_JenisLayanan in varchar2 default null,
cv_1 IN OUT SYS_REFCURSOR
)
AS
v_where VARCHAR2(200);
v_Select VARCHAR2(200);
v_from VARCHAR2(200);
v_final VARCHAR2(200);
v_result VARCHAR2(200);
BEGIN
v_Select:='select * ';
v_from :='from permohonan ';
v_where :='where sysdate=sysdate ';
IF nvl(length(v_namabarang),0) <> 0 then
v_Where := v_Where || ' AND namabarang like ''' || v_namabarang|| '%'' ';
end if;
IF nvl(length(v_jenislayanan),0) <> 0 then
v_Where := v_Where || ' AND jenislayanan like ''' || v_jenislayanan || '%'' ';
end if;
v_final :=v_select|| v_from|| v_where;
dbms_output.put_line(v_result);
END;
我尝试在sqlplus中执行
SQL> var r refcursor;
SQL> exec getmonitoring('AC','1',:r);
SQL>print :r;
结果是“ORA-24338”:语句句柄未执行
那么,我如何在 sqlplus 中执行我的 SP?谢谢
【问题讨论】:
标签: oracle plsql execute ora-24338