auditoria de tablas

Ricardo Mun~oz A. rmunoz en pjud.cl
Lun Nov 13 10:52:19 CLST 2006


Carlos Barbiero wrote:
> On 11/13/06, Ricardo Mun~oz A. <rmunoz en pjud.cl> wrote:
>> Carlos Barbiero wrote:
>> > Estimados,
>> >
>> > Estamos desarrollando un sistema con php y mysql (sin comentarios
>> > Rodrigo por favor ;-p ) en el que necesitamos auditar ciertas tablas,
>> > es decir, registrar las modificaciones, quien las hizo, fecha, hora,
>> > valor anterior del registro antes de la modificacion, maquina donde se
>> > hizo, etc etc. Quisiera saber si alguien tiene experiencia en el rubro
>> > utilizando XML (o algun otro método/herramienta), es decir poder
>> > registrar lo anterior sin tener que duplicar las tablas en la base de
>> > datos.
>>
>> lo mas logico para implementar esto (y lo que se usa) es mediante 
>> triggers.
>> pero, porque no quieres duplicar las tablas?? y que tiene que ver XML??
>
> La idea de hacerlo con XML consiste en tener una tabla:
>
> IDUSUARIO (id del usuario q realizo la acción)
> IDACCION (Alta, baja o Modificación)
> IDTABLA (id de la tabla en la q se realizo la acción)
> DATA (este es el campo (longtext) que tendría un XML con los datos
> anteriores a la operación), por ej...
>
> <campo1>Valor</campo1>
> <campo2>Valor</campo2>
> <campo3>Valor</campo3>
>
> En este caso no duplico las tablas, pero tengo los datos en el campo
> DATA, en formato XML.
>
> Me explico? 

si, pero podrias indicar porque tiene que ser XML y no quieres duplicar 
tablas??
es por algun requerimiento especifico?? te lo pregunto porque si tienes 
tablas
duplicadas se hace mas facil manejar los cambios, y el XML lo podrias 
generar
dinamicamente desde PHP... ;)

> Si algo les parece mal, incorrecto o no óptimo, son muy bienvenidas 
> las correcciones....

tu idea es totalmente factible de implementar con un trigger[1] + 
procedimiento almacenado que
genera el XML y lo inserte en el campo DATA. si o si tendrias que 
hacerlo con MySQL 5.1 asi
podrias tambien usar sus funciones de XML[2].

suerte.

[1] http://dev.mysql.com/doc/refman/5.1/en/create-trigger.html
[2] http://dev.mysql.com/tech-resources/articles/mysql-5.1-xml.html

-- 
Ricardo Mun~oz A.
Usuario Linux #182825 (counter.li.org)


Más información sobre la lista de distribución PHP