Tabla temporal

Hola, estoy trabajando con PL/SQL y necesito crear una tabla temporal dentro de un procedure. La version del oracle es 8.1.
Desde ya muchas gracias.

1 Respuesta

Respuesta
1
En la declaración del procedimiento necesitas declararlo como procedimiento autónomo:
CREATE OR REPLACE PROCEDURE xxx IS PRAGMA AUTONOMOUS_TRANSACTION
Luego para crear una tabla "en caliente", debes usar EXECUTE IMMEDIATE:
EXECUTE IMMEDIATE 'CREATE TABLE T_TEMPORAL (xxxx)';
Después de las operaciones, siempre es bueno borrarla
EXECUTE IMMEDIATE 'DROP TABLE T_TEMPORAL';
Aunque personalmente lo de crear una tabla temporal dentro de un procedimiento es una mala práctica de programación, ya que el problema seguro que posee otra resolución más elegante
Muchas gracias por la ayuda ! Me sirvió de mucho !
Cierra la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas