Tengo un procedimiento almacenado que utilizó el comando EXECUTE IMMEDIATE
para ejecutar una cadena muy larga. ¿Cómo soporto una cadena muy larga y devuelvo los datos en un refcursor?Oracle EJECUTAR INMEDIATO en un cursor
7
A
Respuesta
0
Utilice 11gR2 y DBMS_SQL.to_refcursor.
12
Suponiendo que su SQL es no más de 32 K (como @Tony Andrews hizo alusión a), usted debe ser capaz de usar algo como esto:
declare
SQL_Text varchar2(32760) := 'select * from dual'; --your query goes here
cur sys_refcursor;
begin
open cur for SQL_Text;
end;
Cuando se trabaja con Ref cursores, open-for
se puede utilizar directamente , en lugar de execute immediate
.
Cuestiones relacionadas
- 1. ORACLE Enumeración de sentencias DDL dentro de Execute Inmediato
- 2. REF CURSOR versus función TABLE en Oracle
- 3. Bucle a través de un cursor explícito en Oracle
- 4. Oracle PLSQL: declare un cursor en una tabla no existente
- 5. ¿Cómo ejecutar un procedimiento almacenado de Oracle?
- 6. Ejecutar un comando debajo del cursor en VIM
- 7. Oracle: seleccione una columna específica de un cursor de referencia
- 8. Inmediato = verdadero VS inmediato = falso en el componente JSF
- 9. Cómo elevar un SIGALARM inmediato en c
- 10. Usando el Cursor de Ref en Oracle SQL Developer
- 11. Definir condicionalmente un Cursor
- 12. ¿Cómo obtiene resultados muy formateados de un procedimiento de Oracle que devuelve un cursor de referencia?
- 13. Cómo llamar a un procedimiento almacenado mediante un cursor ref en Oracle con la ardilla
- 14. ¿Es posible ejecutar un procedimiento almacenado en un conjunto sin utilizar un cursor?
- 15. Ventana Inmediato en Modo de Diseño
- 16. Selector infantil inmediato en LESS
- 17. Oracle cursor que atraviesa el último elemento dos veces
- 18. DataGridCheckBoxColumn enlace inmediato
- 19. Sapo para Oracle ... ¿Cómo ejecutar múltiples declaraciones?
- 20. PowerPC Assembly Load Inmediato
- 21. Ventana Inmediato para Eclipse
- 22. Ejecutar comandos múltiples en uno ExecuteScalar en Oracle
- 23. ¿Cómo puedo encontrar la cantidad de registros en un cursor Oracle PL/SQL?
- 24. ¿Cómo cancelar de inmediato un BackgroundWorker en funcionamiento?
- 25. ¿Cuáles son las ventajas y desventajas de reutilizar un cursor vs. crear un nuevo cursor?
- 26. Ejecutar 2 consultas al mismo tiempo en Oracle SQL Developer?
- 27. saltos de línea en la ventana Inmediato
- 28. ¿Cómo ejecutar la consulta de Oracle con begin/end en SQL * Plus?
- 29. Oracle SQL Developer: ¿cómo ver los resultados de un cursor de ref?
- 30. Ventana Comando vs. Inmediato en Visual Studio
¿Cuánto tiempo es "muy largo"? Más de 32 K? –
¿Qué versión de base de datos? – DCookie