Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle EXECUTE IMMEDIATE в курсор

Ако приемем, че вашият SQL не е по-дълъг от 32K (както намекна @Tony Andrews), трябва да можете да използвате нещо подобно:

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

Когато работите с референтни курсори, open-for може да се използва директно, вместо execute immediate .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ограничение на Oracle за заявка след стойността на search_condition

  2. Намерете цифров подтип (smallint, int и т.н.) в Oracle

  3. Изберете всички редове, които се срещат в списъка с 2927 идентификатора

  4. Oracle 12c - индексът на колона „number“ работи ли по-бързо от индекса на колона „varchar“?

  5. Достъп до Oracle Apex от отдалечена машина