CREATE OR REPLACE PACKAGE BODY "WYUSER"."F_MODEL" as
function MModelbrow(id1 in number)
return m_cursor IS
ACursor m_cursor;
l1 number;
strCreateTable varchar2(600);
BEGIN
l1:=0;
strCreateTable:='CREATE GLOBAL TEMPORARY TABLE re (ID2 number,level2 number) ON COMMIT PRESERVE ROWS';
Execute immediate strCreateTable
INSERT INTO RE (id2,level2) values(id1,l1);
COMMIT;
open ACursor for select id2,level2 from re;
return ACursor;
end MModelbrow;
end;
PLS-00103: 出现符号 "insert"在需要下列之一时:
出现这样的错误.这个是怎么回事?
function MModelbrow(id1 in number)
return m_cursor IS
ACursor m_cursor;
l1 number;
strCreateTable varchar2(600);
BEGIN
l1:=0;
strCreateTable:='CREATE GLOBAL TEMPORARY TABLE re (ID2 number,level2 number) ON COMMIT PRESERVE ROWS';
Execute immediate strCreateTable
INSERT INTO RE (id2,level2) values(id1,l1);
COMMIT;
open ACursor for select id2,level2 from re;
return ACursor;
end MModelbrow;
end;
PLS-00103: 出现符号 "insert"在需要下列之一时:
出现这样的错误.这个是怎么回事?
function MModelbrow(id1 in number)
return m_cursor IS
ACursor m_cursor;
l1 number;
strCreateTable varchar2(600);
BEGIN
l1:=0;
strCreateTable:='CREATE GLOBAL TEMPORARY TABLE re (ID2 number,level2 number) ON COMMIT PRESERVE ROWS';
Execute immediate strCreateTable;
INSERT INTO RE (id2,level2) values(id1,l1);
COMMIT;
open ACursor for select id2,level2 from re;
return ACursor;
end MModelbrow;
end;
提示表或视图不存在。
INSERT INTO RE (id2,level2) values(id1,l1);
open ACursor for select id2,level2 from re;这两句应该怎么写
CREATE OR REPLACE PACKAGE "WYUSER"."F_MODEL" as
type m_cursor is ref cursor;
function MModelbrow(
id1 in number
) return m_cursor;
end;
包体提示ora-00942 表或视图不存在
CREATE OR REPLACE PACKAGE BODY "WYUSER"."F_MODEL" as
function MModelbrow(id1 in number)
return m_cursor IS
ACursor m_cursor;
l1 number;
strCreateTable varchar2(600);
BEGIN
l1:=0;
strCreateTable:='CREATE GLOBAL TEMPORARY TABLE
re (ID2 number,level2 number) ON COMMIT PRESERVE ROWS';
Execute immediate strCreateTable;
INSERT INTO RE values(id1,l1);
COMMIT;
open ACursor for select * from re;
return ACursor;
end MModelbrow;
end;
Execute immediate 'INSERT INTO RE values(id1,l1)';
些时表RE并没有啊,怎么可以呢
但是
open ACursor for select * from re;
不行。用Execute immediate 'select * from re';肯定不行
这回应该可以了
用open ACursor for Execute immediate 'select * from re';肯定不行