我需要跟踪
- CreatedByUserId
- ModifiedByUserId
- 创建日期时间
- 修改日期时间
对于我的大多数实体。很标准。
您是否认为将这些列添加到每个表中会更好......或者只是在要审计的表上使用一个CreatedAuditEntryId
和ModifiedAuditEntryId
FK,以指向现有的单独的审计表,这些表用于跟踪所有更改。
AuditEntry 看起来像:
- ID
- 用户身份
- 约会时间
必须执行两次连接才能获得 Created 和 Modified 信息对性能有明显的影响……但好处是我不会在两个不同的地方维护状态,这就像我的设计书中的第一条基本规则。
更新:
为了清楚起见,AuditEntry 表包含对每个表的所有修改,无论如何。这里的问题是是否通过 FK 将该表用于创建和修改信息......或者只是将上面的四列添加到我想要信息的每个表中,以避免连接。