关系模式及函数依赖,答对追加50分

来源:百度知道 编辑:UC知道 时间:2024/05/26 15:44:15
关系模式 S-L-C (Sno,Sdept,Sloc,Cno,Grade), Sdept为学生所在系,Sloc为学生住处,假设每个系的学生住在同一个地方。
1.写出以上关系模式的函数依赖
2.关系模式 S-L-C 是不是 2NF ?如果不是,分解成 2NF 模式集.

图贴不上来,给你一个网址,上面是这一题原题的解答.
网址:http://lwh.yangtzeu.edu.cn/lwhStudy/ktjx/chapter05/5.2.5.htm

举例:一个不是2NF的例子。

关系模式 S-L-C(Sno,Sdept,Sloc,Cno,Grade),其中Sloc为学生的住处,并且每个系的学生住在同一个地方。这里码为(Sno,Cno)。函数依赖有。

(Sno,Cno) Grade

Sno→Sdept,(Sno,Cno) Sdept

Sno→Sloc,(Sno,Cno) Sloc

Sdept→Sloc

其依赖关系可见图5.5,图中实线表示完全函数依赖,虚线表示部分函数依赖。

图5.5 关系模式S-L-C的函数依赖

从上面列出的依赖关系可以看出:非主属性Grade完全依赖于码(Sno,Cno),而非主属性Sdept、Sloc只是部分依赖于码(Sno,Cno)。因此,S-L-C(Sno,Sdept,Sloc,Cno,Grade)不符合2NF的定义,即:S-L-C 2NF。

三、非2NF关系模式的问题
如果一个关系模式R不属于2NF,就会产生以下问题:

① 插入异常

假如要插入一个学生Sno='95010'、Sdept='MA'、Sloc='12-1',该元组不能插入。因为该学生无Cno,而插入元组时必须给定码值。

② 删除异常

假如某个学生只选一门课,如:95003学生只选了一门5号课,现在他不选了,希望该选课。而Cno是主属性,删除了5号课,整个元组都必须删除,从而造成删除异常,即不应该删除的信息也删除了。

③ 修