数据库设计 - 建议

时间:2012-02-21 12:40:01

标签: php mysql

我真的很困惑该怎么做,需要你对我的数据库设计的建议。

首先,

enter image description here

正如您在表格中看到的,我有id,name,eventCategory,totalEvents和date。此表名是InitPlayer。 InitPlayer是一个eventAction,我还有3个eventAction。

正如您在表格中看到的那样,eventCategory项目总是被重复,因为日期已更改。

首先,我将eventCategory保存为表并根据它们检索项目。

根据此图片,您的数据库设计建议是什么? 谢谢

最后, enter image description here enter image description here

2 个答案:

答案 0 :(得分:4)

我认为你应该将数据库中的垃圾标准化。

如果您不断重复使用相同的eventCategory项,则应制作一个小桌子,将其名称存储在那里,eventCategorieseventCategory_ideventCategory_title字段(或类似的东西),然后只需引用eventCategory表中所述initPlayer的ID,或创建一个表来引用initPlayer ID和eventCategories ID。

规范化和分离将帮助您维护数据库中的顺序并帮助您保持理智。您将对查询进行更多的工作,但如果您想扩展或更改特定eventCategory的名称,则值得。

答案 1 :(得分:3)

  

首先,我将eventCategory保存为表并根据它们检索项目。

坚持这个想法,并做到这一点。然后创建一个UserInitEventCategory表格,您可以将userInit.IDeventCategory.ID相关联。