这个桌子结构好吗?

时间:2011-03-04 15:12:44

标签: mysql sql database-design

我将创建一个用于保存选项集的表,现在它有大约30种不同的选项。但是它会逐月逐渐增加,如果我按每个选项设置一个表,那么它将有30+以及最糟糕的部分我必须在每次添加新选项时修改它。选项是分组的。我在想这样的事情。一个单独的表,用于保存选项集的组ID,以及另一个表的选项。

option_id | group_id | option_name | option_value

谢谢。

2 个答案:

答案 0 :(得分:1)

看起来不错,但在我个人看来,我会将option_id更改为ID,将option_name更改为Name,将option_value更改为Value。

group_id很好,所以你可以知道它链接到另一个表,就其他表而言,它是完全没必要的。如果表名是Options,通常假设字段Value是Option Value。

希望有所帮助。

答案 1 :(得分:0)

如果您想对不同组中已有的选项进行分组,会发生什么? 是否存在这样的要求,或者甚至可能在您的应用程序的生命周期内出现这种需求?我会建议looking into the EAV data model,因为你在表面上有类似的东西 - 因为它是一个广泛讨论的主题,在阅读了其他人对此有何看法后,你可能会看到你是否遗漏了某些东西或不。