Trigger

02/03/2006 - 12:53 por Francisco Matamoros | Informe spam
Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo para
inserción y actualización, hasta aquí bien. El problema que tengo es que no
sé hacerlo para que se ejecute sólo desde un procedimiento especificado y no
se ejecute cuando se ejecute otro procedimiento.

¿ Se puede hacer esto ?

Preguntas similare

Leer las respuestas

#1 FrancisF.
02/03/2006 - 13:29 | Informe spam
Como me parece que no me he explicado lo repito.
El problema es:
Quiero que el trigger no actúe cuando los registros que se insertan o
actualizan los genera un determinado procedimiento. Ahora me parece más claro.
Gracias.

"Francisco Matamoros" escribió:

Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo para
inserción y actualización, hasta aquí bien. El problema que tengo es que no
sé hacerlo para que se ejecute sólo desde un procedimiento especificado y no
se ejecute cuando se ejecute otro procedimiento.

¿ Se puede hacer esto ?




Respuesta Responder a este mensaje
#2 Noldis Chumacero
02/03/2006 - 13:32 | Informe spam
Francisco,

Los Triggers siempre se ejecutan cuando se realiza alguna acción, ahora
bien, si quieres algo mas sofisticado talvez tengas que utilizar un INSTEAD
OF, que es un tipo de trigger que se dispara en vez de... alguna acción,
entonces ahi puedes controlar talvez utilizando alguna variable en tu
procedimiento para realizar la acción que quieres. De todas formas, me
parece mejor que puedas tener tus procedimientos y en cada uno de ellos
realizar la acción que el trigger haría.

Saludos.

Ing. Noldis Chumacero Chávez
Departamento de Sistemas
AeroSur S.A.
Santa Cruz de la Sierra, Bolivia
Telf. 3364446(236) 77074919
"Francisco Matamoros" escribió en el mensaje
news:OyrGQ%

Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo
para inserción y actualización, hasta aquí bien. El problema que tengo es
que no sé hacerlo para que se ejecute sólo desde un procedimiento
especificado y no se ejecute cuando se ejecute otro procedimiento.

¿ Se puede hacer esto ?



Respuesta Responder a este mensaje
#3 ulises
02/03/2006 - 13:39 | Informe spam
Hay un tip interesante de Miguel Egea :

Tip: Hacer que un trigger no se dispare desde si es llamado desde un
procedimiento almacenado.
http://www.configuracionesintegrale...articulo%4

Saludos,
Ulises

FrancisF. wrote:

Como me parece que no me he explicado lo repito.
El problema es:
Quiero que el trigger no actúe cuando los registros que se insertan o
actualizan los genera un determinado procedimiento. Ahora me parece más
claro. Gracias.

"Francisco Matamoros" escribió:

Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo
para inserción y actualización, hasta aquí bien. El problema que tengo es
que no sé hacerlo para que se ejecute sólo desde un procedimiento
especificado y no se ejecute cuando se ejecute otro procedimiento.

¿ Se puede hacer esto ?




Respuesta Responder a este mensaje
#4 FrancisF.
02/03/2006 - 16:51 | Informe spam
Bueno, todas las respuestas son válidas y útiles, el problema es que no puedo
utilizarlas. A ver si de este modo lo arreglamos:
¿Podría hacer que el procedimiento anule el trigger y al finalizar la
ejecución de este stored que vuelva a funcionar ?

"Noldis Chumacero" escribió:


Francisco,

Los Triggers siempre se ejecutan cuando se realiza alguna acción, ahora
bien, si quieres algo mas sofisticado talvez tengas que utilizar un INSTEAD
OF, que es un tipo de trigger que se dispara en vez de... alguna acción,
entonces ahi puedes controlar talvez utilizando alguna variable en tu
procedimiento para realizar la acción que quieres. De todas formas, me
parece mejor que puedas tener tus procedimientos y en cada uno de ellos
realizar la acción que el trigger haría.

Saludos.

Ing. Noldis Chumacero Chávez
Departamento de Sistemas
AeroSur S.A.
Santa Cruz de la Sierra, Bolivia
Telf. 3364446(236) 77074919
"Francisco Matamoros" escribió en el mensaje
news:OyrGQ%
>
> Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo
> para inserción y actualización, hasta aquí bien. El problema que tengo es
> que no sé hacerlo para que se ejecute sólo desde un procedimiento
> especificado y no se ejecute cuando se ejecute otro procedimiento.
>
> ¿ Se puede hacer esto ?
>
>
>




Respuesta Responder a este mensaje
#5 Salvador Ramos
02/03/2006 - 18:27 | Informe spam
Nos podrías indicar cual es la situación con más detalle y por qué quieres
que para ese procedimiento en específico no se ejecute ?
Nos podrías indicar también, si durante la ejecución de tu procedimiento
puede haber otros usuarios actualizando en la tabla sobre la que quieres
deshabilitar el trigger ?

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"FrancisF." escribió en el mensaje
news:
Bueno, todas las respuestas son válidas y útiles, el problema es que no
puedo
utilizarlas. A ver si de este modo lo arreglamos:
¿Podría hacer que el procedimiento anule el trigger y al finalizar la
ejecución de este stored que vuelva a funcionar ?

"Noldis Chumacero" escribió:


Francisco,

Los Triggers siempre se ejecutan cuando se realiza alguna acción, ahora
bien, si quieres algo mas sofisticado talvez tengas que utilizar un
INSTEAD
OF, que es un tipo de trigger que se dispara en vez de... alguna acción,
entonces ahi puedes controlar talvez utilizando alguna variable en tu
procedimiento para realizar la acción que quieres. De todas formas, me
parece mejor que puedas tener tus procedimientos y en cada uno de ellos
realizar la acción que el trigger haría.

Saludos.

Ing. Noldis Chumacero Chávez
Departamento de Sistemas
AeroSur S.A.
Santa Cruz de la Sierra, Bolivia
Telf. 3364446(236) 77074919
"Francisco Matamoros" escribió en el
mensaje
news:OyrGQ%
>
> Buenas, necesito hacer un trigger (desencadenador) que se ejecute sólo
> para inserción y actualización, hasta aquí bien. El problema que tengo
> es
> que no sé hacerlo para que se ejecute sólo desde un procedimiento
> especificado y no se ejecute cuando se ejecute otro procedimiento.
>
> ¿ Se puede hacer esto ?
>
>
>




Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida