EXECUTE IMMEDIATE
Publicado por lore (12 intervenciones) el 30/07/2007 12:55:43
Necesito ejecutar un procedimiento dentro de un paquete, pero el procedimiento a ejecutar varia segun el resultado de una select, es decir, necesito ejecutar un procedimiento u otro segun unas condiciones. He intentado usar 'EXECUTE IMMEDIATE', pero me da error, no se en q, la verdad, yo guardo lo que quiero ejecutar en una vble y luego pongo 'EXECUTE IMMEDIATE vble'.
Indico lo q hago, a ver si me podeis ayudar:
W_EJECUTA := 'BEGIN ' || w_pck || '.' || w_pro || '( ' || pe_nuevos_valores(w_cont).w_campo_nuevo|| ' ,' || pe_clvexp || ',' || pe_ccammd || '); END;';
EXECUTE IMMEDIATE W_EJECUTA;
lo pongo asi xq me han dixo q hay q hacerlo como queriendo ejecutar un bloq anonimo y dentro el procedimiento.
Gracias.
Indico lo q hago, a ver si me podeis ayudar:
W_EJECUTA := 'BEGIN ' || w_pck || '.' || w_pro || '( ' || pe_nuevos_valores(w_cont).w_campo_nuevo|| ' ,' || pe_clvexp || ',' || pe_ccammd || '); END;';
EXECUTE IMMEDIATE W_EJECUTA;
lo pongo asi xq me han dixo q hay q hacerlo como queriendo ejecutar un bloq anonimo y dentro el procedimiento.
Gracias.
Valora esta pregunta


0