我需要帮助.(我搜索了很多并且变得更加困惑.)
我使用Toad 9.7.25并且我做了这个程序(在一个包中)
PROCEDURE ReportaCC(pfcorte IN DATE, lcursor IN OUT SYS_REFCURSOR)
IS
BEGIN
OPEN lcursor FOR
select c1, c3, c3 from table1 where hdate = pfcorte;
close lcursor;
END;
Run Code Online (Sandbox Code Playgroud)
在toad的sql编辑器中,我想执行该过程并将光标结果显示在toad的datagrid中:
--- I WANT THIS CODE CAN EXECUTE IN TOAD'S SQL EDITOR.
DECLARE
PFCORTE DATE;
LCURSOR SYS_REFCURSOR;
BEGIN
PFCORTE := '31/08/2012';
-- LCURSOR := NULL; -- Modify the code to initialize this parameter
mypaq.REPORTACC( TO_DATE(PFCORTE,'DD/MM/YYYY') , LCURSOR );
:to_grid := LCURSOR;
COMMIT;
END;
Run Code Online (Sandbox Code Playgroud)
当我执行脚本(F9),并设置变量:to_grid类型的光标,我得到下一个错误:
"ORA-24338:语句句柄未执行"
可能是什么问题
提前致谢.
谢谢你的四个帖子......工作得很好!
但是现在有另一个问题......如果我替换这样的复杂查询(从表中选择c1,c2,c3 ......)
PROCEDURE …
Run Code Online (Sandbox Code Playgroud) 我有一个oracle 11g数据库,在Windows Server 2008上运行:
Oracle Database 11g企业版11.1.0.6.0版 - 生产
我有两个表和三个视图:
CREATE TABLE UTILS.SEG_ROLES
(
APLICACION VARCHAR2(12 BYTE),
ROL VARCHAR2(12 BYTE),
USUARIOS VARCHAR2(255 BYTE)
)
SET DEFINE OFF;
Insert into SEG_ROLES (APLICACION, ROL, USUARIOS) Values ('MULTIPLAN', 'ADMIN', 'ADMIN');
Insert into SEG_ROLES (APLICACION, ROL, USUARIOS) Values ('MULTIPLAN', 'CAR01', 'PATY ');
Insert into SEG_ROLES (APLICACION, ROL, USUARIOS) Values ('MULTIPLAN', 'CAR02', 'FABIOLA, ERIKA');
Insert into SEG_ROLES (APLICACION, ROL, USUARIOS) Values ('MULTIPLAN', 'CON01', 'LUCY, PATY');
Insert into SEG_ROLES (APLICACION, ROL, USUARIOS) Values ('MULTIPLAN', 'CON02', 'VALERIA'); …
Run Code Online (Sandbox Code Playgroud)