现有记录学生信息的关系模式S(學号姓名,系名住处),其语义规定:学号作为学生的唯一标识;每个学生只能属于一个系;每个系的学生住在同一个地方请回答:1、S最高为第几范式?... 现有记录学生信息的关系模式S(学号姓名,系名住处),其语义规定:学号作为学生的唯一标识;每个学生只能属于一个系;每个系的学生住在同一个地方请回答:
1、S最高为第几范式?说明理由
2、此关系模式是否存在插入异常?
3、请将其改进為更高一级范式
为它满足第一范式,同时每个非主属性都完全依赖于主键;最后它不属于第三范式因为所有非主属性都不传递的依赖於主键,而这里“每个系的学生住在同一个地方”导致“住处”通过“系名”传递依赖于主键“学号”,违反了三范式的要求所以它朂高只能到第二范式。
2、存在插入异常举个例子:虽然新成立了某个系,也确定了该系学生的宿舍楼即已经有了系名和住处这两条信息,但是你无法将这个信息插入表中因为这个系还没有招生,其学号列的值为空而学号是主键,不能为空结果导致插入的异常。
S1:(学号姓名,系名)主键:学号系名为引用S2表的外键
S2:(系名,住处 )主键:系名没有外键
这题曾经也是我们的一个考试题。
以有學号->(姓
>(住处),所以存在传递依赖
2、由于存在传递依赖所以存在数据插入异常。如新设立的系名还没有学生时,因为学号为空所鉯导致新系名无法插入
S1:学号,姓名系名
地方”,所以“住处”通
2、S由于不满足第三范式故存在数据冗余,插入、修改、删除异常
S1:学号,姓名系名
}