trigger con update

29/01/2007 - 13:41 por Luis Perruca | Informe spam
Hola al grupo:

Tengo una tabla con un campo llamado "modificado" y una PK llamada Id.
Lo que quiero hacer es que cuando se modifique cualquiera de los campos de
un registro se guarde en el campo "modificado" la fecha y la hora del
sistema.
Algo así como:
CREATE TRIGGER actualizar ON tabla
FOR UPDATE
AS
BEGIN
UPDATE tabla SET modificado=GETDATE()
WHERE tabla.Id=updated.Id
END

El problema es que no existe una tabla "updated" al estilo de "inserted"
para los triggers de inserción.
¿Cómo podría hacerlo?

Agradezco de antemano vuestras sugerencias.

Un saludo.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
29/01/2007 - 15:41 | Informe spam
Luis,

La operacion de actualizacion "update" se lleva a cabo elminando las filas
he insertando las mismas filas pero con los nuevos valores. Esto dice que
tendremos filas en ambas tablas virtuales "deleted" e "inserted". en la tabla
"deleted" encontraras las filas que cumplen la condicion antes de ser
actualizadas y en la tabla "inserted" encontraras las mismas filas con los
nuevos valores.

UPDATE tabla
SET modificado=GETDATE()
WHERE exists (select * from inserted as i where i.[id] = tabla.[id])
go


AMB



"Luis Perruca" wrote:

Hola al grupo:

Tengo una tabla con un campo llamado "modificado" y una PK llamada Id.
Lo que quiero hacer es que cuando se modifique cualquiera de los campos de
un registro se guarde en el campo "modificado" la fecha y la hora del
sistema.
Algo así como:
CREATE TRIGGER actualizar ON tabla
FOR UPDATE
AS
BEGIN
UPDATE tabla SET modificado=GETDATE()
WHERE tabla.Id=updated.Id
END

El problema es que no existe una tabla "updated" al estilo de "inserted"
para los triggers de inserción.
¿Cómo podría hacerlo?

Agradezco de antemano vuestras sugerencias.

Un saludo.



Respuesta Responder a este mensaje
#2 Luis Perruca
29/01/2007 - 17:56 | Informe spam
OK.

Muchisimas gracias


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

La operacion de actualizacion "update" se lleva a cabo elminando las filas
he insertando las mismas filas pero con los nuevos valores. Esto dice que
tendremos filas en ambas tablas virtuales "deleted" e "inserted". en la
tabla
"deleted" encontraras las filas que cumplen la condicion antes de ser
actualizadas y en la tabla "inserted" encontraras las mismas filas con los
nuevos valores.

UPDATE tabla
SET modificado=GETDATE()
WHERE exists (select * from inserted as i where i.[id] = tabla.[id])
go


AMB



"Luis Perruca" wrote:

Hola al grupo:

Tengo una tabla con un campo llamado "modificado" y una PK llamada Id.
Lo que quiero hacer es que cuando se modifique cualquiera de los campos
de
un registro se guarde en el campo "modificado" la fecha y la hora del
sistema.
Algo así como:
CREATE TRIGGER actualizar ON tabla
FOR UPDATE
AS
BEGIN
UPDATE tabla SET modificado=GETDATE()
WHERE tabla.Id=updated.Id
END

El problema es que no existe una tabla "updated" al estilo de "inserted"
para los triggers de inserción.
¿Cómo podría hacerlo?

Agradezco de antemano vuestras sugerencias.

Un saludo.



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