设有关系STUDENT(S
2. 解: (1)关系STUDENT是1NF。 (2)首先消除部分函数依赖{S#,CNAME}→{SNAME,SDEPT,MNAME} 将关系分解为: R1(S#,SNAME,SDEPT,MNAME) R2(S#,CNAME,GRADE) 在关系R1中存在非主属性对候选码的传递函数依赖S#→SDEPT,SDEPT→MNAME,所以以上关系模式还不是BCNF,进一步分解R1: R11(S#,SNAME,SDEPT) R12(SDEPT,MNAME) R11,R12都是3NF。 关系模式 R2(S#,CNAME,GRADE) R11(S#,SNAME,SDEPT) R12(SDEPT,MNAME) R2,R11,R12关系模式存在的函数依赖 S#,CNAME→GRADE S#,SNAME→SNAME,SDEPT SDEPT→MNAME 上述函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。
举一反三
内容
- 0
【单选题】定义一个学生类Student,则初始化一个学生对象的语句是( A. Student s ; B. Student s = new Student(); C. Student s = new student(); D. Student s = s.student();
- 1
设有如下三个关系R、S和T,关系
- 2
设有关系R与关系S,则R与S的并运算是()
- 3
设有关系R1和R2,经过关系运算得到结果S,则S是( )
- 4
设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作。S(S