Triggers

30/08/2006 - 20:36 por Carlos Maggiotti | Informe spam
Buenas gente...

Necesioto generar un Trigger AFTER INSERT y otro AFTER UPDATE para una misma
tabla...

El tema es que al momento de insertar, necesito actualizar un campo dentro
de esa insercion. Como es logico, la actualizacion la estoy haciendo sobre
la tabla y no sobre INSERTED (pues no se puede hacer esto ultimo).

Esto me genera por ende que se dispare el Trigger de AFTER UPDATE y es lo
que estoy queriendo evitar...

Hay manera de de evitar que al querer modificar un campo al momento de la
insercion se dispare el TRIGGER AFTER UPDATE?

Saludos y gracias de antemano...
CarlosMag

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
30/08/2006 - 20:53 | Informe spam
Carlos,

Si se puede, si apagas la opcion, a nivel de base de dato, llamada
"Recursive triggers". No se si es aconsejable hacer esto.


AMB

"Carlos Maggiotti" wrote:

Buenas gente...

Necesioto generar un Trigger AFTER INSERT y otro AFTER UPDATE para una misma
tabla...

El tema es que al momento de insertar, necesito actualizar un campo dentro
de esa insercion. Como es logico, la actualizacion la estoy haciendo sobre
la tabla y no sobre INSERTED (pues no se puede hacer esto ultimo).

Esto me genera por ende que se dispare el Trigger de AFTER UPDATE y es lo
que estoy queriendo evitar...

Hay manera de de evitar que al querer modificar un campo al momento de la
insercion se dispare el TRIGGER AFTER UPDATE?

Saludos y gracias de antemano...
CarlosMag



Respuesta Responder a este mensaje
#2 Carlos Maggiotti
30/08/2006 - 20:56 | Informe spam
Es que esta opcion para mi BD de trabajo ya estaba en Off...

Alguna otra opcion?


"Alejandro Mesa" escribió en el
mensaje news:
Carlos,

Si se puede, si apagas la opcion, a nivel de base de dato, llamada
"Recursive triggers". No se si es aconsejable hacer esto.


AMB

"Carlos Maggiotti" wrote:

Buenas gente...

Necesioto generar un Trigger AFTER INSERT y otro AFTER UPDATE para una
misma
tabla...

El tema es que al momento de insertar, necesito actualizar un campo
dentro
de esa insercion. Como es logico, la actualizacion la estoy haciendo
sobre
la tabla y no sobre INSERTED (pues no se puede hacer esto ultimo).

Esto me genera por ende que se dispare el Trigger de AFTER UPDATE y es lo
que estoy queriendo evitar...

Hay manera de de evitar que al querer modificar un campo al momento de la
insercion se dispare el TRIGGER AFTER UPDATE?

Saludos y gracias de antemano...
CarlosMag



Respuesta Responder a este mensaje
#3 Alejandro Mesa
30/08/2006 - 21:10 | Informe spam
Carlos,

chequea la opcion "nested triggers" a nivel de servidor. Puedes usar el
procedimineto "sp_configure" para ver si la opcion esta prendida y tambien
para cambiarla. Tambien puedes ir a las propiedades del servidor en el
"Enterprise Manager", en el tab "Server Settings" en el segundo bloque
"Server behavior" hay una opcion llamada "Allow triggers to be fired which
fire other triggers (nested triggers)", apaga esta opcion.


AMB


"Carlos Maggiotti" wrote:

Es que esta opcion para mi BD de trabajo ya estaba en Off...

Alguna otra opcion?


"Alejandro Mesa" escribió en el
mensaje news:
> Carlos,
>
> Si se puede, si apagas la opcion, a nivel de base de dato, llamada
> "Recursive triggers". No se si es aconsejable hacer esto.
>
>
> AMB
>
> "Carlos Maggiotti" wrote:
>
>> Buenas gente...
>>
>> Necesioto generar un Trigger AFTER INSERT y otro AFTER UPDATE para una
>> misma
>> tabla...
>>
>> El tema es que al momento de insertar, necesito actualizar un campo
>> dentro
>> de esa insercion. Como es logico, la actualizacion la estoy haciendo
>> sobre
>> la tabla y no sobre INSERTED (pues no se puede hacer esto ultimo).
>>
>> Esto me genera por ende que se dispare el Trigger de AFTER UPDATE y es lo
>> que estoy queriendo evitar...
>>
>> Hay manera de de evitar que al querer modificar un campo al momento de la
>> insercion se dispare el TRIGGER AFTER UPDATE?
>>
>> Saludos y gracias de antemano...
>> CarlosMag
>>
>>
>>



Respuesta Responder a este mensaje
#4 Carlos Maggiotti
30/08/2006 - 21:11 | Informe spam
Ante todo gracias por responder. Encontre la solucion con la siguiente
fundion:

IF @@NESTLEVEL > 1 RETURN

Saludos y gracias

CarlosMag

"Carlos Maggiotti" escribió en el mensaje
news:
Es que esta opcion para mi BD de trabajo ya estaba en Off...

Alguna otra opcion?


"Alejandro Mesa" escribió en el
mensaje news:
Carlos,

Si se puede, si apagas la opcion, a nivel de base de dato, llamada
"Recursive triggers". No se si es aconsejable hacer esto.


AMB

"Carlos Maggiotti" wrote:

Buenas gente...

Necesioto generar un Trigger AFTER INSERT y otro AFTER UPDATE para una
misma
tabla...

El tema es que al momento de insertar, necesito actualizar un campo
dentro
de esa insercion. Como es logico, la actualizacion la estoy haciendo
sobre
la tabla y no sobre INSERTED (pues no se puede hacer esto ultimo).

Esto me genera por ende que se dispare el Trigger de AFTER UPDATE y es
lo
que estoy queriendo evitar...

Hay manera de de evitar que al querer modificar un campo al momento de
la
insercion se dispare el TRIGGER AFTER UPDATE?

Saludos y gracias de antemano...
CarlosMag









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