数据库表包含数据组合

时间:2013-11-18 09:21:20

标签: mysql sql database database-design

我正在客户的网站上工作,他使用MySQL作为数据库,我只想确认他的数据库设计有问题。他的网站的目的是让客户可以收到“证书”。可以为程序和范围的组合颁发证书。因此,当他的申请人申请证书时,该认证适用于特定的计划和范围组合。

他有一个名为'scopes'的表它也可以称为'program_scope_combos'里面是所有的程序和范围组合,它看起来像这样:

id - program_name - scope_name
1  - DEF          - crops
2  - DEF          - livestock
3  - ABC          - crops
4  - ABC          - plants
5  - XYZ          - plants

有人可以指出这个是否违反了规范化数据库的规则?

除此之外,还有一个表格,它只列出程序,但看起来很正常。

'programs' table
id - name - abbreviation

我向他建议如下:

 'applications' table
 id - client_id - program_id - scope_id - created_at

 'certificates' table
 id - name - application_id - status - created_at

 'programs' table
 id - name - abbreviation

 'scopes' table
 id - name - abbreviation

关于此数据库的一些注意事项。还有一个客户表。客户端可以有许多应用程序。非常感谢。

0 个答案:

没有答案