si se puede hacer, ante un update, en una función de trigger disparado for
each row contás con los registros

NEW

Data type RECORD; variable holding the new database row for
INSERT/UPDATE operations
in row-level triggers. This variable is NULL in statement-level triggers
and for DELETE operations.
OLD

Data type RECORD; variable holding the old database row for
UPDATE/DELETE operations
in row-level triggers. This variable is NULL in statement-level triggers
and for INSERT operations.

y podes comparar new.nombrecolumnas con old.nombrecolumna

El 14 de mayo de 2016, 11:18, Gerardo Herzig <gher...@fmed.uba.ar> escribió:

> Mmmm lo complicado de hacerlo con triggers es obtener ese dato del usuario.
> Si tenes alguna forma de obtenerlo (gracias a algun id de sesion, o algo
> asi), entonces con un trigger podrias, con algo de trabajo, determinar que
> columnas de que tabla cambiaron, darle formato y grabarlo en esa tabla de
> auditoria
>
> HTH
> Gerardo
>
> ----- Mensaje original -----
> > De: "José Fermín Francisco Ferreras" <josefermi...@hotmail.com>
> > Para: "Lista PostgreSQL" <pgsql-es-ayuda@postgresql.org>
> > Enviados: Viernes, 13 de Mayo 2016 23:50:37
> > Asunto: [pgsql-es-ayuda] Saber en que columna el usuario hizo una
> modificacion
> >
> >
> > Buenas noches!!
> >
> >
> > Me gustaría saber como guardar en una tabla de historial los cambios
> > realizados solo en las columnas cuyos datos fueron modificados en
> > otra tabla (cliente).
> >
> >
> > Por ejemplo:
> >
> >
> > tabla: cliente
> >
> >
> > campos: id, nombre, apellido, fecha_nac, cedula, direccion
> >
> >
> >
> >
> > tabla: historial
> >
> >
> > id: 1
> > fecha: 2016-01-01 10:00:00
> > usuario: 5
> > modifico dato columna: nombre
> >
> >
> > id:2
> > fecha: 2016-01-01 14:50:10
> > usuario: 2
> > modifico dato columna: cedula
> > id:3
> > fecha: 2016-01-01 14:50:10
> > usuario: 2
> > modifico dato columna: direccion
> >
> >
> >
> >
> >
> >
> >
> > ing. José Fermín Francisco Ferreras
> > San Francisco de Macorís, Rep. Dom.
> >
>
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org
> )
> Para cambiar tu suscripción:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>

Responder a