Una de triggers

23/01/2009 - 19:08 por Marcelo Trinidad | Informe spam
Hola, tengo la tabla cabecera y detalle. En la relacion le he puesto que al
eliminar la cabecera borre los detalles en cascada. Pero el tema es que
tengo un trigger en la tabla de detalles que debería ejecutarse al eliminar
una fila del detalle. Pero este trigger no se dispara cuando se elimina en
cascada desde la cabecera.

Alguna sugerencia??

Gracias de antemano!
 

Leer las respuestas

#1 Alejandro Mesa
23/01/2009 - 20:12 | Informe spam
Marcelo,

Que version de SQL Server usas?

- SS 2005 DE
USE tempdb
GO

CREATE TABLE dbo.t1 (
c1 INT NOT NULL UNIQUE
)
GO

CREATE TABLE dbo.t2 (
c1 INT NOT NULL UNIQUE,
c2 INT NULL CONSTRAINT FK_t2_t1 FOREIGN KEY REFERENCES dbo.t1(c1) ON DELETE
CASCADE
)
GO

CREATE TRIGGER tr_t2_Del ON dbo.t2
FOR DELETE
AS
RAISERROR ('pase por aqui.', 10, 1) WITH NOWAIT
GO

INSERT INTO dbo.t1 VALUES(1)
GO

INSERT INTO dbo.t2 VALUES(1, 1)
GO

DELETE FROM dbo.t1
WHERE c1 = 1;
GO

DROP TABLE dbo.t2, dbo.t1
GO


AMB


"Marcelo Trinidad" wrote:

Hola, tengo la tabla cabecera y detalle. En la relacion le he puesto que al
eliminar la cabecera borre los detalles en cascada. Pero el tema es que
tengo un trigger en la tabla de detalles que debera ejecutarse al eliminar
una fila del detalle. Pero este trigger no se dispara cuando se elimina en
cascada desde la cabecera.

Alguna sugerencia??

Gracias de antemano!


Preguntas similares