Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle EXECUTE IMMEDIATE in einen Cursor

Angenommen, Ihr SQL ist nicht länger als 32 KB (wie @Tony Andrews angedeutet hat), sollten Sie in der Lage sein, so etwas zu verwenden:

declare
   SQL_Text varchar2(32760) := 'select * from dual'; --your query goes here
   cur sys_refcursor;
begin
   open cur for SQL_Text;
end;

Wenn Sie mit Ref-Cursor arbeiten, open-for kann direkt verwendet werden, anstelle von execute immediate .