我目前有一个“强”用户表格 强”表格,现在要为特定用户添加与用户有关的其他信息。接受这些信息的表格有“强”语言 强”和“强”OS 强”等字段,每个字段都有“强”复选框 强”选项列表。
示例:
Languages known: checkbox PHP, Java, Ruby
OS knowledge: Windows, Linux, Mac
目前我的数据库表是这样的:
USER
----------------------------------------
| ID | Name |
-----------------------
| 1 | John |
-----------------------
| 2 | Alice |
-----------------------
LANGUAGES
----------------------------------------
| ID | User_ID(FK) | lang-name |
----------------------------------------
| 1 | 1 | PHP |
----------------------------------------
| 1 | 2 | Java |
----------------------------------------
OS
----------------------------------------
| ID | User_ID(FK) | os-name |
----------------------------------------
| 1 | 1 | Windows |
----------------------------------------
| 1 | 2 | Windows |
----------------------------------------
这看起来像是一个好的方案吗? 与用户有关的领域还有很多,每个领域都需要有自己的表格,而且表格中似乎有许多冗余,因为成千上万的用户会知道PHP,因此,会有成千上万行的PHP作为每个不同用户的语言。
" 强者 " 是否有更好的组织方法? " /强者 "