mysql+J2EE 实现查看修改记录

来源:百度知道 编辑:UC知道 时间:2024/05/21 16:06:14
想要查看谁修改过数据库里的数据,并可以查看修改前的数据和修改后的数据;并可根据修改时间和修改列的列名查询;

各位如有例子可以发到《小的》邮箱:nssaiqq@163.com 并说下大体思路

自己有想过 用Java的序列化+MySQL中建立一个表(表里有:修改的表名,修改列名,修改时间,序列化后文件地址)来实现;不知道这样的利弊如何还有望各位相告;在这谢谢各位了;对了如果有什么框架带有这个功能(hibernate?)就在好不过了
一楼的说的好
相当于给 原数据表 建立一个备份表 再加几个 字段 说明修改时间 修改人 为什么不让表2 和表3 放到一起呢 不会出现数据冗余的
修改数据时 我们建立一个触发器 自动把原数据保存到备份表,并 加入修改时间 修改人ID 等信息 但是修改人ID怎么弄进去了

各位高手 都出来说说 大家讨论讨论

表1,数据表
表2,操作表 必需字段: 操作人,操作时间,数据表ID,数据操作表ID
表3,数据操作表 :对数据表的修改进行记录,字段大体与数据表相同,但必需多一个操作表ID

这样就可以操作表来关联表1与表2,进行查询

你这不如直接用监听实现。设置attribute对应你的字段名和内容,然后当修改表时,同时修改attribute里的值,此时ServletContextListener就能知道这一动作发生。
再利用流写入到一个专门储存修改记录的日志中。。。

数据库连接用的都是一个账户,所以修改人ID是指你用户表里的ID了,那在你Java程序中控制获取当前操作人员ID不就可以了。