将关系模式S(学号,姓名,班级,班主任,课程编号,课程名称,学时,成绩)规范化到3NF,能得到的关系数目是
A、1
B、2
C、3
D、4
【正确答案】:D
【题目解析】:该题考查对关系模式按照规范化理论进行规范的方法的掌握。首先,应根据给出的关系模式写出函数依赖。我们可以写出如下的函数依赖:学号->姓名,学号->班级,班级->班主任,课程编号->课程名称,课程编号->学时,(学号,课程编号)->成绩,根据写出的函数依赖,我们可以得到关系模式的候选键为(学号,课程编号)。因为存在非主属性姓名对主键(学号,课程编号)的局部函数依赖,所以将1NF规范到2NF,可以分解为3个关系模式R1(学号,姓名,班级,班主任),R2(课程编号,课程名称,学时),R3(学号,课程编号,成绩)。因为在R1中存在非主属性班主任对主键学号的传递函数依赖,故将R1规范到3NF,可分解为R11(学号,姓名,班级),R12(班级,班主任)。由此将题目中给出的R规范到3NF得到4个关系,分别是R1(学号,姓名,班级),R2(班级,班主任),R3(课程编号,课程名称,学时),R4(学号,课程编号,成绩)。所以D项是正确选项。