Oracle - Extraer cuerpo de un trigger

 
Vista:

Extraer cuerpo de un trigger

Publicado por Manu (2 intervenciones) el 04/11/2003 12:39:19
Muy simple, PERO NADIE LO SABE. Ni profes de diversos cursos, ni supuestos expertos Oracle ¿¿?? En el resto de DBMS's del mercado está claro como hacerlo pero Oracle es absolutamente oscuro !!!
VEAMOS:
- Creo un script con la sintaxis de un trigger (para interidad referencial).
- Lo ejecuto. Todo O.K. Funciona bien cumpliendo su misión.
AHORA VIENE EL PROBLEMA:
Intento mediante una query recuperar el texto del trigger. Imposible !
Lo único que encuentro en catálogos internos de la B.D. es:
user_triggers.description y user_triggers.body que presentan solamente un trozo de dicha sintaxis ¿ DONDE ESTÁ EL TEXTO COMPLETO DE MI TRIGGER ?
Ya os comenté antes, para DB2, Informix, Sql Server, Adaptive Server
Enterprise está claro, pero Oracle "IS DIFERENT!"
¡¡¡ Quien lo encuentre buen desentrigador será !!!

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Extraer cuerpo de un trigger

Publicado por Byron (300 intervenciones) el 04/11/2003 16:46:40
Antes de ejecutar el query para mostrar el body debes setear algunas variables de entorno de sql plus para poder ver completo:
SET LINES 30000
SET PAGES 2000
SET LONG 10000

Despues de esto ejecuta la consulta, con esto deberás ver todo el trigger:

select trigger_body from user_triggers
where trigger_name = upper(&nombre_trigger);

El problema radica en que el tipo de dato de trigger_body es de tipo LONG.

Saludos DTB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Extraer cuerpo de un trigger

Publicado por Manu (2 intervenciones) el 04/11/2003 17:10:32
Gracias Byron. Lo he comprobado y efectivamente funciona pero....
MI PROBLEMA ES QUE LO HAGO DESDE CÓDIGO de un entorno de programación, concretamente PowerBuilder.
¿ Como hacer para fjar las variables SET LINES 30000, SET PAGES 2000 y SET LONG 10000 ??
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Extraer cuerpo de un trigger

Publicado por CESAR MARTINEZ (1 intervención) el 01/06/2015 23:58:26
Tenia tu mismo problema ya que estaba programando en Peoplecode, y es mejor que lo hagas desde un programa manejador de bases de datos. en su preferencia "Oracle SQL DEVELOPER" ya que no tienes que setear las variables y de una te arroja el resultado.

gracias fueron muy útiles sus comentarios anteriores y este es mi pequeño aporte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar