我必须在SQL
上创建大学数据库表。
我有三张桌子:
大学,教师和部门
所有这些主键都有id
。
因此,当我创建部门表时,我必须添加university
和faculty
表的外键,或者只有教师ID是否足够?
我必须使用哪种类型的密钥?小学还是独特?我不太了解他们的不同。
抱歉我的英语不好。
答案 0 :(得分:1)
如果层次结构为university -> faculty -> department
,那么您将university_id
放在教师表中,将faculty_id
放在部门表中。
primary key
是unique constraint
和not null constraint
的组合(以及物理表的排序)。
答案 1 :(得分:1)
三个表大学,教师和部门都有主键,可以唯一标识该表中的每一行。要在每个表之间建立关系,应该存在外键关系。
主键和唯一约束之间的区别在于主键不允许NULL值,但可以有一个NULL值作为唯一键。它们都唯一地标识表中的每一行,并且不允许重复。