store procedure o triger

29/01/2004 - 16:40 por Oscar | Informe spam
Necesito que alguien me ayude a diseñar un proceso que
cuando en una tabla se inserten o eliminen datos, se
traspasen o eliminen los campos 1 y 2 de la la tabla
original.

El objetivo es mantener otra tabla "temporal" con sólo los
dos primeros campos de la tabla original. me podrias
orientar con el código?

gracias

Preguntas similare

Leer las respuestas

#1 ulises
29/01/2004 - 20:04 | Informe spam
Me parece que tendrías que incluir dos triggers uno para
la inserción y otro para la eliminación que incluyan lo
siguiente (si es que te he entendido bien) :

CREATE TRIGGER ON tabla FOR INSERT
AS
...
INSERT INTO tablatemporal
SELECT campo1, campo2 FROM INSERTED
...

CREATE TRIGGER ON tabla FOR DELETE
AS
...
DELETE FROM tablatemporal
WHERE campo1 + campo2 IN ( SELECT campo1 + campo2 FROM
DELETED )

...

Saludos,
Ulises

Necesito que alguien me ayude a diseñar un proceso que
cuando en una tabla se inserten o eliminen datos, se
traspasen o eliminen los campos 1 y 2 de la la tabla
original.

El objetivo es mantener otra tabla "temporal" con sólo


los
dos primeros campos de la tabla original. me podrias
orientar con el código?

gracias
.

Respuesta Responder a este mensaje
#2 Jose Mariano Alvarez \(MUG\)
30/01/2004 - 10:00 | Informe spam
Sugiero cambiar el DELETE por

DELETE FROM tablatemporal
INNER JOIN DELETED
ON DELETED.campo1 = tablatemporal.campo1
AND DELETED.campo2 = tablatemporal.campo2

Si los campos son de diferente tipo (u otras condiciones de concatenacion)
no funcionaria en IN


Jose Mariano Alvarez
Comunidad de base de datos
Grupo de Usuarios Microsoft
www.mug.org.ar

"ulises" wrote in message
news:6ad201c3e69a$c9b96b70$
Me parece que tendrías que incluir dos triggers uno para
la inserción y otro para la eliminación que incluyan lo
siguiente (si es que te he entendido bien) :

CREATE TRIGGER ON tabla FOR INSERT
AS
...
INSERT INTO tablatemporal
SELECT campo1, campo2 FROM INSERTED
...

CREATE TRIGGER ON tabla FOR DELETE
AS
...
DELETE FROM tablatemporal
WHERE campo1 + campo2 IN ( SELECT campo1 + campo2 FROM
DELETED )

...

Saludos,
Ulises

Necesito que alguien me ayude a diseñar un proceso que
cuando en una tabla se inserten o eliminen datos, se
traspasen o eliminen los campos 1 y 2 de la la tabla
original.

El objetivo es mantener otra tabla "temporal" con sólo


los
dos primeros campos de la tabla original. me podrias
orientar con el código?

gracias
.

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