2011-04-01 53 views
1

通常它约定不更新映射表的记录,而是删除相同的并添加新的记录。数据库设计:我们是否应该为映射表添加时间戳列?

在这种情况下,在映射表中添加updated_on列是不相关的,但仍然有人可以通过错误或有意更新表提示在所有表中具有updated_on列。在所有表格中添加created_on列似乎很合乎逻辑,但有点混乱。请建议?

什么是约定?

+1

这取决于。你打算如何处理这些信息? – 2011-04-01 03:12:31

+0

我认为有这样的专栏是有用的。但是,如果你打算记录更新和创建信息,我认为你应该有一个类似于log talbe的存储信息,如:who update(username,or ip)?什么时间和日期?当然这是你的选择 – Nathanphan 2011-04-01 09:38:37

回答

0

我认为你不应该这样做,除非你打算使用这些信息。否则,你必须有触发器来保持数据是最新的,否则你会忘记和行数据是没有意义的。这样的触发器在性能方面会有不同的影响(在PostgreSQL上,影响应该是非常小的,其他一些可能不那么重要)。

一般来说,没有什么比用无意义的数据填充数据库更糟了(因为它没有适当更新)。你应该尽可能避免这种情况。

相关问题