Microsoft Access 中的自定义事件/活动日志记录

时间:2020-12-24 15:52:38

标签: database ms-access

我的目标是设计数据库的一部分,用于捕获活动发生的时间或记录更新的时间。我还希望数据库根据另一个表或查询的记录中的字段值设置一个表中新记录的某些字段值。

对于第一个目标,将有 4 个实体:usersubjectactivityLog(多对多的中间实体usersubject 之间,除了主键之外,还有一个更新的时间字段),以及一个 violation 实体。 violation 实体还将用户和主题作为外键。

每次用户向 violation 表中添加新的主题记录或更新 violation 表中的现有记录时,我希望数据库以编程方式选择当前记录的值并将这些值复制到 activityLog 中的新记录中(基本上复制整个记录或我选择的某些字段值),并在它的 updatedTime 字段中设置当前系统日期/时间。

对于第二个目标,我的代理机构制定了对违规行为进行处罚的业务规则,并根据第一次、第二次和第三次违规评估处罚。例如,如果一个对象犯了 5 次违规,并且这 5 次中的 2 次是相同的违规类型,那么对于 2 次相同的违规行为的处罚应该提升为第二次违规处罚(所有其他人将保持在如果没有其他违规类型为 2 次或更多,则为第 1 次违规)。

我希望数据库做的是从activityLog 表中选择subjectID 和violenceID,按subjectID 分组并计算violatonID 的数量。输入后,我意识到这基本上是一个查询。所以,这个查询的结果会告诉我一个人犯了多少次违规,我会写 VBA 代码来更新包含查询数据的表的记录(这个表将是永久的......我不知道是什么查询类型可能是...更新查询)。

根据我在上面提供的描述,如何评价这种设计的好/坏/高效/低效?请

0 个答案:

没有答案