create or replace procedure test( type_list in varchar2, result out sys_refcursor ) as cursor cv is select id from temp where type in (type_list); --将此处的引号拿掉 begin for t in cv loop insert into xxx values(t.id) end loop; open result for 'select * from xxx'; end;
/* Formatted on 2011/04/08 09:38 (Formatter Plus v4.8.8) */ CREATE OR REPLACE PROCEDURE TEST ( type_list IN VARCHAR2, RESULT OUT sys_refcursor ) AS CURSOR CV IS SELECT ID FROM temp WHERE TYPE IN (''||type_list||''); BEGIN FOR t IN CV LOOP INSERT INTO xxx VALUES (t.ID); END LOOP; OPEN RESULT FOR 'select * from xxx'; END;
type_list in varchar2,
result out sys_refcursor
) as
cursor cv is
select id
from temp
where type in (type_list); --将此处的引号拿掉
begin
for t in cv loop
insert into xxx
values(t.id)
end loop; open result for 'select * from xxx';
end;
CREATE OR REPLACE PROCEDURE TEST (
type_list IN VARCHAR2,
RESULT OUT sys_refcursor
)
AS
CURSOR CV
IS
SELECT ID
FROM temp
WHERE TYPE IN (''||type_list||'');
BEGIN
FOR t IN CV
LOOP
INSERT INTO xxx
VALUES (t.ID);
END LOOP; OPEN RESULT FOR 'select * from xxx';
END;
VALUES (t.ID);