3

我有一个 Access 数据库,其中包含许多表和数千条记录,如果有人更改其中的任何数据、任何行,甚至只有一个单元格,有没有办法知道哪些特定行或单元格已更改Access 数据库,任何属性还是我应该使用任何触发器?

4

1 回答 1

2

几年前,我在使用 MSSQL DB 时遇到了类似的问题,我似乎记得 ACCESS (MDB) 和 SQL (MDF) 数据库都没有天生支持这一点。如果我没记错的话,您将不得不采用以下原则:

1) 交易数据不应该被修改,只能参考历史记录,新记录包含改变的值。我从三个角度看:

  • 我有一个名为 PrecursorRecId 的列,其中包含与更新相关的最新记录的 record_id。
  • 保存的另一列和 Context_ID 下,所有相关记录都通过一个公共值链接,该公共值是 AuditTxnContext 表的键 Id 列。
  • 记录的 TxnDate(非常合乎逻辑)

2) 主数据记录也没有改变,但每条记录都有一个 EffectiveFromDate 和 EffectiveToDate,其中具有 NULL EffectiveToDate 的记录被认为是最新的。根据表的敏感性,MaterData 记录的创建伴随着审计条目记录。同样,有一个 RecordCreatedDateTime 不会自动匹配 EffectiveFromDate 标记。

这可能会帮助您继续前进,但对您现有的数据没有太多帮助。我也不太清楚你在做什么,所以我的意见相当笼统。我希望它有任何帮助。如果我错了,我会欢迎任何人的意见,这就是我们应对挑战的方式。

如果您仍在处理它,请告诉我更多信息。如果没有,也许关闭你的问题。

干杯

苹果电脑

于 2012-04-20T15:18:39.740 回答