从理论上讲,只要满足以下条件,触发器就可以保持摘要表的准确更新:
- 您不禁用触发器
- 您不直接更新汇总表
- 您无需通过TRUNCATE TABLE更改源数据(如您所述)
还:
- 您必须使用正确的初始值为汇总表添加种子
- 您必须对源表和摘要表都使用InnoDB,因此更新是原子的
维护汇总表是反规范化的一个示例。与所有非规范化一样,这会带来数据异常的风险。您负责维护数据完整性;数据库在帮助您方面有很大的限制。
我建议您需要不时检查汇总表(例如每小时一次就足够了),以确保它没有不同步,如果有,请进行更正。这取决于您,因为数据库无法为您检查它。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)