Trigger antes y Despues

15/10/2004 - 17:53 por Jorge Aguilar B. | Informe spam
Hola a todo una pregunta existe alguna manera que el Sql Server 2000 pueda
obtener de alguna manera el valor actual y el valor anterior que tenia
guardado en un tabla, aqui les envio un ejemplo

Tabla : Articulo_Precio
Id_Articulo Id_Moneda Precio
A DOL 10
B DOL 11

un usuario hace un cambio y la tabla queda de la siguiente manera
Id_Articulo Id_Moneda Precio
A DOL 10
B DOL 15
C DOL 13

Yo deberia tener una tabla Articulo_Precio_Historico que diga
Id_Articulo Id_Moneda PrecioOld PrecioNew
A DOL Null 10
B DOL 11 15
C DOL Null 13

Saludos
Jorge A. Aguilar
 

Leer las respuestas

#1 Salvador Ramos
15/10/2004 - 18:41 | Informe spam
Hola:

Si te refieres a obtenerlo desde el trigger que se ejecuta en la
actualización, si que puedes. En ese trigger tienes disponibles una tablas
llamadas Inserted y Deleted, donde tienes dicha información. En el caso de
un Update tendrás la información antigua en Deleted y la nueva en Inserted,
en una Insert sólo tendrás información en Inserted y en una Delete en
Deleted.

Si no estás familiarizado con este tema, puedes ampliar información en los
BOL, y también puedes encontrar varios ejemplos de triggers (algunos de
ellos hacen uso de las tablas Inserted y Deleted) en www.portalsql.com,
busca allí la palabra 'trigger'.

Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net
¿ Te interesa participar en las reuniones
del grupo de Usuarios de SQL Server y .NET ?
Se harán en levante de España, (Alicante o Murcia)?

"Jorge Aguilar B." escribió en el mensaje
news:
Hola a todo una pregunta existe alguna manera que el Sql Server 2000 pueda
obtener de alguna manera el valor actual y el valor anterior que tenia
guardado en un tabla, aqui les envio un ejemplo

Tabla : Articulo_Precio
Id_Articulo Id_Moneda Precio
A DOL 10
B DOL 11

un usuario hace un cambio y la tabla queda de la siguiente manera
Id_Articulo Id_Moneda Precio
A DOL 10
B DOL 15
C DOL 13

Yo deberia tener una tabla Articulo_Precio_Historico que diga
Id_Articulo Id_Moneda PrecioOld PrecioNew
A DOL Null 10
B DOL 11 15
C DOL Null 13

Saludos
Jorge A. Aguilar


Preguntas similares