【发布时间】:2015-04-07 09:15:13
【问题描述】:
我想在所有表中添加一个'LastModification'列,该列将存储相关行的修改日期,我的Web应用程序中使用的框架是:SpringMVC,Hibernate和MySQL数据库。
我的问题是:
- 新列的类型是:日期时间还是时间戳?根据 我的研究,我没有发现日期时间有更大的范围,但是 未来我可能面临任何风险或限制?
- 侧面性能,为每个表添加触发器是否更好 将更新“LastModification”列,否则我必须 使用注释“版本?我试图实现版本,但我有一个 很多错误,解决方案需要更改现有注释 实体(即:cascade = CascadeType.ALL 等...),而我没有 更改它的权利:(所以我打算添加触发器,但我不知道是不是 是否会影响我的数据库的性能?
下面的脚本是我打算实现的触发器示例:
CREATE TRIGGER trg_i_table001
BEFORE INSERT ON table001
FOR EACH ROW SET NEW.lastModification = Now();
CREATE TRIGGER trg_u_table001
BEFORE UPDATE ON table001
FOR EACH ROW SET NEW.LastModification = Now();
感谢您的回答。
【问题讨论】:
标签: mysql hibernate spring-mvc triggers