如何以有效的方式在大学和数据库中存储大学和部门?

时间:2012-05-21 01:53:18

标签: database database-design

我想创建一个关于大学的网站。我的问题是试图找到一种有效的方法来存储表格中的部门和大学。例如,Koc大学有计算机工程,工商管理,经济学系。但萨班哲大学的部门也有计算机工程和经济学。我在想有一张有大学ID和部门ID的桌子,但我不确定这是最好的主意。你有什么想法吗?

2 个答案:

答案 0 :(得分:1)

很有可能你想要区分每所大学的各个部门。因此,例如,Koc的经济学系与Sabanci的经济系不同。为此,您需要两个表:

+--------------------
| University        |
+-------------------+
| UniversityId      |
| Name              |
+-------------------+

+-------------------+
| Department        |
+-------------------+
| DepartmentId      |
| Name              |
| UniversityId      |
+-------------------+

如果您只需要参考每所大学的部门类型而没有任何关于该部署的额外数据,也就是说,您只想知道Sabanci和Koc都有经济学部门而且没有别的,您仍然可以使用上述或者您可以使用这个结构:

+--------------------
| University        |
+-------------------+
| UniversityId      |
| Name              |
+-------------------+

+-------------------+
| Department        |
+-------------------+
| DepartmentId      |
| Name              |
+-------------------+

+-------------------+
| UniDept           |
+-------------------+
| UniversityId      |
| DepartmentId      |
+-------------------+

答案 1 :(得分:0)

如果同一部门可以与不同的大学联系,我会这样做:
表大学,中表UniID,DeptID,表部门

但如果一个部门仅针对一所大学,则删除中间表并将UniID添加到部门。