Saber causa cuando falla un Trigger

31/08/2005 - 19:00 por Sonlino | Informe spam
Hola, a ver si alguien me puede resolver esta otra duda.
¿Donde salen los mensajes o excepciones del Trigger cuando falla o si
queremos depurarlo?

Tenía uno que se ejecutaba en un INSERT (Creaba una fila en otra tabla) y
cuando fallaba ni siquiera me aparecía el registro que pretendía insertar
con el insert original y me ha costado lo mio velo.

Gracias,

Preguntas similare

Leer las respuestas

#1 Maxi
31/08/2005 - 19:24 | Informe spam
Hola, debes hacer control de los errores con IF @@error


Salu2
Maxi


"Sonlino" escribió en el mensaje
news:lmlRe.3373269$
Hola, a ver si alguien me puede resolver esta otra duda.
¿Donde salen los mensajes o excepciones del Trigger cuando falla o si
queremos depurarlo?

Tenía uno que se ejecutaba en un INSERT (Creaba una fila en otra tabla) y
cuando fallaba ni siquiera me aparecía el registro que pretendía insertar
con el insert original y me ha costado lo mio velo.

Gracias,



Respuesta Responder a este mensaje
#2 Sonlino
31/08/2005 - 23:34 | Informe spam
El problema está en errores que no te esperas si el Trigger tiene mucho
código ¿Donde haces el control para que no haga el rollback de la fila
original? (Si sabéis por que lo hace decídmelo también)
Y si quiero hacer depuración. ¿Se pueden ver en algún lado los mensajes que
quiera mostrar (como cuando hago un Print en el analizador)?

Gracias de nuevo


"Maxi" escribió en el mensaje
news:%
Hola, debes hacer control de los errores con IF @@error


Salu2
Maxi


"Sonlino" escribió en el mensaje
news:lmlRe.3373269$
Hola, a ver si alguien me puede resolver esta otra duda.
¿Donde salen los mensajes o excepciones del Trigger cuando falla o si
queremos depurarlo?

Tenía uno que se ejecutaba en un INSERT (Creaba una fila en otra tabla)
y
cuando fallaba ni siquiera me aparecía el registro que pretendía insertar
con el insert original y me ha costado lo mio velo.

Gracias,







Respuesta Responder a este mensaje
#3 Maxi
01/09/2005 - 02:22 | Informe spam
Hola, triggers con mucho codigo huy huy huy!! ahi tenemos un problemon
de diseño ya :(

para controlar esto q decis lo q deberias hacer es primero verificar que el
error no vaya a pasar y vos manejarlo, por ej: si tienes una restriccion
check y no quieres q de error deberias primero verificar el dato y vos
controlar esto!!

opinion: no me parece bueno hacer esto ya que estaras duplicando mucho
codigo y luego se hara muy dificil de mantener :(


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"Sonlino" escribió en el mensaje
news:InpRe.3378078$
El problema está en errores que no te esperas si el Trigger tiene mucho
código ¿Donde haces el control para que no haga el rollback de la fila
original? (Si sabéis por que lo hace decídmelo también)
Y si quiero hacer depuración. ¿Se pueden ver en algún lado los mensajes
que quiera mostrar (como cuando hago un Print en el analizador)?

Gracias de nuevo


"Maxi" escribió en el mensaje
news:%
Hola, debes hacer control de los errores con IF @@error


Salu2
Maxi


"Sonlino" escribió en el mensaje
news:lmlRe.3373269$
Hola, a ver si alguien me puede resolver esta otra duda.
¿Donde salen los mensajes o excepciones del Trigger cuando falla o si
queremos depurarlo?

Tenía uno que se ejecutaba en un INSERT (Creaba una fila en otra tabla)
y
cuando fallaba ni siquiera me aparecía el registro que pretendía
insertar
con el insert original y me ha costado lo mio velo.

Gracias,











Respuesta Responder a este mensaje
#4 Sonlino
01/09/2005 - 10:28 | Informe spam
Hola Maxi,
Primero de todo, gracias por tus aportaciones.

Tampoco es que el Trigger tenga un libro, lo que hace es hacer algún select
con comprobaciones y actualizar otras tablas. (Creo que es mejor un sólo
Trigger que haga todo que uno para cada tabla implicada)
El probleme que tuve es que en un caso que yo no esperaba me venía un valor
null y en una comparación se iba por donde no debía y para descubrirlo, anda
que no paso tiempo...
Bueno, me estoy mirando el funcionamiento del control de errores que
comentas para ver como puedo usarlo.
Y por otro lado, por lo que veo, entonces, tampoco hay ninguna forma de
dejar rastro de lo que pasa de un trigger.

Un saludo,

Lino

PD. ¿Alguna aportación para mi otro post del uso de índices? (Me gustaría
saber opiniones de otra gente con más conocimento que yo y nadie ha
contestado)

"Maxi" escribió en el mensaje
news:%
Hola, triggers con mucho codigo huy huy huy!! ahi tenemos un problemon
de diseño ya :(

para controlar esto q decis lo q deberias hacer es primero verificar que
el error no vaya a pasar y vos manejarlo, por ej: si tienes una
restriccion check y no quieres q de error deberias primero verificar el
dato y vos controlar esto!!

opinion: no me parece bueno hacer esto ya que estaras duplicando mucho
codigo y luego se hara muy dificil de mantener :(


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"Sonlino" escribió en el mensaje
news:InpRe.3378078$
El problema está en errores que no te esperas si el Trigger tiene mucho
código ¿Donde haces el control para que no haga el rollback de la fila
original? (Si sabéis por que lo hace decídmelo también)
Y si quiero hacer depuración. ¿Se pueden ver en algún lado los mensajes
que quiera mostrar (como cuando hago un Print en el analizador)?

Gracias de nuevo


"Maxi" escribió en el mensaje
news:%
Hola, debes hacer control de los errores con IF @@error


Salu2
Maxi


"Sonlino" escribió en el mensaje
news:lmlRe.3373269$
Hola, a ver si alguien me puede resolver esta otra duda.
¿Donde salen los mensajes o excepciones del Trigger cuando falla o si
queremos depurarlo?

Tenía uno que se ejecutaba en un INSERT (Creaba una fila en otra
tabla) y
cuando fallaba ni siquiera me aparecía el registro que pretendía
insertar
con el insert original y me ha costado lo mio velo.

Gracias,















email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida