executar un trigger desde otro trigger?

17/06/2004 - 21:19 por ONil | Informe spam
Hola Amigos !

Tengo el siguiente codigo

CREATE TRIGGER insBloqueo ON RES_BLOQUEO
FOR INSERT
AS
DECLARE @CANTIDAD INT
DECLARE @VUELO INT
DECLARE @HOTEL INT
DECLARE @FECHA DATETIME
DECLARE @FECHA2 DATETIME
DECLARE @MOV VARCHAR(3)

SELECT
@CANTIDAD = CANTIDAD_BLOQUEO,
@VUELO = NUMERO_VUELO,
@FECHA = FECHA_INICIO,
@FECHA2 = FECHA_FIN,
@MOV = TIPO_MOV,
@HOTEL = ID_HOTEL
FROM
INSERTED

IF @MOV = 'PAX'
BEGIN
UPDATE RES_FRECUENCIA_VUELO
SET ASIENTOS_RESERVADOS = ASIENTOS_RESERVADOS + @CANTIDAD
WHERE NUMERO_VUELO = @VUELO
AND FECHA_VUELO = @FECHA

DELETE FROM RES_BLOQUEO
WHERE
DateDiff(minute,Convert(Varchar(5),HORA_BLOQUEO,108),Convert(Varchar(5),GetD
ate(),108)) > 1
END
CREATE TRIGGER delBloqueo ON RES_BLOQUEO
INSTEAD OF DELETE
AS

DECLARE @CANTIDAD INT
DECLARE @VUELO INT
DECLARE @HOTEL INT
DECLARE @FECHA DATETIME
DECLARE @FECHA2 DATETIME
DECLARE @MOV VARCHAR(3)


SELECT
@CANTIDAD = CANTIDAD_BLOQUEO,
@VUELO = NUMERO_VUELO,
@FECHA = FECHA_INICIO,
@FECHA2 = FECHA_FIN,
@MOV = TIPO_MOV,
@HOTEL = ID_HOTEL
FROM
DELETED

IF @MOV = 'PAX'
BEGIN
UPDATE RES_FRECUENCIA_VUELO
SET ASIENTOS_RESERVADOS = ASIENTOS_RESERVADOS - @CANTIDAD
WHERE NUMERO_VUELO = @VUELO
AND FECHA_VUELO = @FECHA
END

Alguno de uds. podria orientarme porque no se dispara este ultimo trigger
cuando hago el delete desde el primer trigger..?

Preguntas similare

Leer las respuestas

#1 Isaías
18/06/2004 - 01:55 | Informe spam
En mas de una ocasion, hemos sugerido lean su BOL, antes
de plantear su pregunta (a mi me ha pasado !!!!!):

Desencadenadores recursivos
SQL Server permite también la invocación recursiva de
desencadenadores cuando el valor recursive triggers está
habilitado en sp_dboption.
#2 ONil
18/06/2004 - 03:36 | Informe spam
Hola !
Por si alguna persona lo necesita..

Respuesta :
Se requiere tener activada la opcion
nestedtriggers.
Ver sp_option en los BOL.

Salu2.
(\__/)
(=':'=)
(")_(")

MX.

"ONil@" escribió en el mensaje
news:u9zj4$
Mostrar la cita
DateDiff(minute,Convert(Varchar(5),HORA_BLOQUEO,108),Convert(Varchar(5),GetD
Mostrar la cita
#3 ONil
18/06/2004 - 06:51 | Informe spam
Hola Isaias..!

Muchas gracias..!

Efectivamente! , localize la respuesta e inclusive la puse aqui mismo por
si a alguien mas le servia.., sin embargo no aparece
aùn..(un problema de mi server en la compañia..)

Pero tienes mucha razon... debo de aplicarme mas con los BOL.. procurare
no ocurra de nuevo..!

Recibe Salu2.
(\__/)
(=':'=)
(")_(")

MX.


"Isaías" escribió en el mensaje
news:1e17401c454c6$991451c0$
En mas de una ocasion, hemos sugerido lean su BOL, antes
de plantear su pregunta (a mi me ha pasado !!!!!):

Desencadenadores recursivos
SQL Server permite también la invocación recursiva de
desencadenadores cuando el valor recursive triggers está
habilitado en sp_dboption.
Ads by Google
Search Busqueda sugerida