我属于一个小组,正在为我们的应用程序创建一个网站。我们认为,使用下面的表结构(称为bug_summary
)来创建一个Bugtracker会很有用:
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个“属于”第二个错误报告。是否有“最佳”方法来做到这一点?我正在使用phpMyAdmin,如果有什么区别。
感谢您对此设置的任何帮助,非常感谢。
答案 0 :(得分:0)
似乎bug_update
行与bug_summary
行具有多对一关系。每个摘要项可以具有零个或多个更新项。这完全适合您的用例。
您可能应该在bug_update
表中添加某种序列号,或者至少添加一个时间戳,以便可以按输入的顺序显示错误更新信息。 (请记住,SQL数据库记录没有可靠的自然顺序;您必须指定它。)
您可以使用自动递增的更新ID。或者您可以use DEFAULT CURRENT TIMESTAMP
执行此操作。
答案 1 :(得分:0)
在您感兴趣的列更新时,在bug_summary
表上编写更新时触发器,以创建并输入bug_update
表中。您可以记录感兴趣的字段的旧值和新值。请确保将bug_summary
表的主键记录为bug_update
表中的字段,以便您轻松进行联接查看单个条目的更新。您可能还想创建一个字段来记录时间戳,以确切了解更新发生的时间。
http://www.mysqltutorial.org/create-the-first-trigger-in-mysql.aspx本文演示了这一概念