我是一个小组的一员,我正在为我们的应用程序创建一个网站。我们已经决定有一个错误跟踪器会很有用,具有下面的表结构(称为bug_summary):
bug_id Summmary Details Assigned Dev
------ -------- ------- ------------
1 Bug 1 Broken Scott
2 Bug 2 Add Feature Dave
3 Bug 3 Design Bug Jimmy
4 Bug 4 Broken Carly我希望有另一个表来保存开发者输入的更新,但仍然“链接”到ID。假设bug_update表中有5个更新。
update_details bug_id_for_update
-------------- -----------------
Jan 1st update 2
Jan 2nd update 2
Jan 2nd update 1
Jan 2nd update 4
Jan 4th update 2我希望其中的3个“属于”第二个bug报告。有没有一种“最好”的方法来做到这一点?我使用的是phpMyAdmin,如果这有什么不同的话。
感谢任何人的帮助,这是非常感谢。
发布于 2018-09-01 06:28:47
只要您感兴趣的列被更新,就在bug_summary表上编写一个on update触发器,以便在bug_update表中创建和条目。您可以记录您感兴趣的字段的旧值和新值。确保将bug_summary表的主键记录为bug_update表中的一个字段,这样您就可以轻松地进行连接,以查看单个条目上的更新。您可能还想创建一个字段来记录时间戳,以便确切地知道更新发生的时间。
http://www.mysqltutorial.org/create-the-first-trigger-in-mysql.aspx本文将演示这一概念
发布于 2018-09-01 06:22:24
看起来,bug_update行与bug_summary行具有多对一的关系。每个摘要项可以有零个或多个更新项。这非常适合您的用例。
您可能应该向bug_update表中添加某种序列号,或者至少添加一个时间戳,这样您就可以按照输入的顺序显示错误更新信息。(请记住,SQL数据库记录没有可靠的自然排序;您必须指定它。)
你可以使用一个自动递增的更新id。或者你可以通过use DEFAULT CURRENT TIMESTAMP来做这件事。
https://stackoverflow.com/questions/52123039
复制相似问题