候选码若关系中的一个属性或属性组的值能够唯一地标识一个元组,且他的子集不能唯一的标识一个元组,则称这个属性或属性组做候选码。
虽然STC(S,T,C)∈3NF,但它仍存在增删改等异常,还不是一个理想的关系模式。 存在的问题: (1) 插入异常 如果某个教师开设了某门课程,但尚未有学生选修,则有关信息也无法存入数据库中。 (2) 删除异常 如果选修过某门课程的学生全部毕业了,在删除这些学生元组的同时,相应教师开设该 门课程的信息也同时丢掉了。 (3) 数据冗余度大 虽然一个教师只教一门课,但每个选修该教师该门课程的学生元组都要 记录这一 信息。 (4) 修改复杂 某个教师开设的某门课程改名后,所有选修了该教师该门课程的学生元组都要进行相应 修改。 BC范式:
(注:上面的-是减号的意思)