gpt4 book ai didi

mysql - 记录字段变化的审计历史

转载 作者:太空宇宙 更新时间:2023-11-03 10:31:27 25 4
gpt4 key购买 nike

我对软件开发类(class)项目的数据库设计有疑问。

我有一张表来存储“采购订单”,每个采购订单都与“状态”表存在多对一关系。因此,每个采购订单都可以有一个状态,例如:“打开请求”、“收到 cargo ”、“收到发票”等。

好吧,一切正常;但是,我希望将更改的历史记录存储到状态字段。因此,何时更改为“收到 cargo ”以及何时更改为“收到发票”或任何其他状态。

我想我需要创建一个新表来存储这些?如果是这样,我不确定如何实现它,以及如何将所需的逻辑构建到我的 Web 应用程序中。我正在从头开始学习所有内容,所以我不确定这个逻辑是否应该在我的 laravel 项目(MVC)的 Controller 中,或者数据库是否能够处理这个 - 例如它能够在主控时级联删除记录记录被删除。

我的主要问题是我不知道这类问题是否有名称,所以我也在努力用谷歌搜索它。

非常感谢任何帮助,谢谢。

最佳答案

My main issue is I don't know if this type of problem has a name, so I am struggling to google it too.

您正在寻找的是“审计”或“审计日志”或“版本控制”。

我喜欢 paper_trail可以。您有一个表来存储对任何表的更改。审计表将表、主键、操作(插入、更新、删除)和行的快照存储为 JSON .

您可以将其实现为 database triggers或者作为 ORM 中的回调。

关于mysql - 记录字段变化的审计历史,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57314934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com