Java 记录数据库更新、访问、修改等的最后日期/时间的简单方法
我编写了Java/JDBC代码,它在数据库上执行简单/基本的操作。 我想添加代码,帮助我跟踪某个特定数据库何时被该程序访问、更新、修改等。 我正在考虑在我的DBMS中创建另一个数据库,其中将为每个涉及的数据库存储这些详细信息或日志。Java 记录数据库更新、访问、修改等的最后日期/时间的简单方法,java,database,jdbc,Java,Database,Jdbc,我编写了Java/JDBC代码,它在数据库上执行简单/基本的操作。 我想添加代码,帮助我跟踪某个特定数据库何时被该程序访问、更新、修改等。 我正在考虑在我的DBMS中创建另一个数据库,其中将为每个涉及的数据库存储这些详细信息或日志。 这是最好的方法吗?有没有其他方法(最好是简单的方法)可以做到这一点 编辑- 将“last_modified”列添加到表中,然后在表上添加更新触发器以将其设置为db当前时间,这是非常标准的。那么你的应用程序就不需要担心了。此外,还经常使用“创建时间”,由插入触发器填充
这是最好的方法吗?有没有其他方法(最好是简单的方法)可以做到这一点 编辑-
将“last_modified”列添加到表中,然后在表上添加更新触发器以将其设置为db当前时间,这是非常标准的。那么你的应用程序就不需要担心了。此外,还经常使用“创建时间”,由插入触发器填充 评论后更新: 似乎您正在查找审核日志。有些人编写的应用程序只通过存储过程进行数据操作,而不是通过插入和更新。一个固定的api。因此,如果要向表中添加项,请调用存储过程:
addItem(itemName, itemDescription)
然后proc将插入到item表中,并执行任何必要的日志记录
另一种技术,如果您使用某种框架进行jdbc访问(比如Spring),则可能是在该层进行拦截。在几乎所有的表中,我有以下几列:
- 创造的
- 创建数据
有关更多信息,请修改您的问题,以指定您正在使用或计划使用的数据库。目前,我使用的是MySQL。但是,我也希望我的代码至少能与Oracle SQL和MS-SQL一起工作。
addItem(itemName, itemDescription)