模式分解例题演示教学Word格式.docx

上传人:b****6 文档编号:16262362 上传时间:2022-11-22 格式:DOCX 页数:9 大小:138.77KB
下载 相关 举报
模式分解例题演示教学Word格式.docx_第1页
第1页 / 共9页
模式分解例题演示教学Word格式.docx_第2页
第2页 / 共9页
模式分解例题演示教学Word格式.docx_第3页
第3页 / 共9页
模式分解例题演示教学Word格式.docx_第4页
第4页 / 共9页
模式分解例题演示教学Word格式.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

模式分解例题演示教学Word格式.docx

《模式分解例题演示教学Word格式.docx》由会员分享,可在线阅读,更多相关《模式分解例题演示教学Word格式.docx(9页珍藏版)》请在冰豆网上搜索。

模式分解例题演示教学Word格式.docx

可以看出,该关系满足第一范式。

如果关系模式R满足第一范式,且它的任何一个非主属性都完全函数依赖于任一个候选码,则R满足第二范式(简记为2NF)。

所以不是第二范式

分解成第二范式

R1:

C→B

R2:

如果关系模式R满足2NF,并且它的任何一个非主属性都不传递依赖于任何候选码,则称R是第三范式(3NF),记作R∈3NF。

分解成第三范式

R21:

B→D

R22:

D→E

•如果关系模式R是1NF,且每个属性都不传递依赖于R的候选码,那么称R是BCNF的模式。

R1中属性B传递依赖于R的候选码AB,故R1不是BCNF范式

关系模式R∈1NF,若X→Y,且Y⊆X时,X必含有候选码,则R∈BCNF。

R1中C→B,且B⊆C,但B不含有任何候选码,故R1不是BCNF范式

分解成BCNF范式

R11:

A,B

R12:

候选码是什么?

能够唯一标识一个元组的某一属性或属性组。

候选码:

(A,B)和(A,C)

假设有一个名为参加的关系,该关系有属性:

职工(职工名)、工程(工程名)、时数(花费在工程上的小时数)和工资(职工的工资);

一个参加记录描述一个职工花费在一个工程上的总时数和他的工资;

另外,一个职工可以参加多个工程,多个职工可以参加同一个工程(用A、B、C、D分别代表属性职工、工程、时数和工资)。

请回答如下各问题:

1) 

确定这个关系的关键字;

AB

2) 

找出这个关系中的所有函数依赖;

AB->

C,A->

3) 

指出这个关系上的哪些函数依赖会带来操作异常现象;

D对关键字AB的部分函数依赖可能会带来如下问题:

数据冗余:

一个职工参加多个工程,则职工的工资值会重复;

更新异常:

当改变职工的工资时,可能会只修改了一部分,从而造成数据不一致;

插入异常:

当一个职工尚未承担工程,但要插入职工信息(如工资)则不允许(因为没有完整的关键字);

删除异常:

当某个工程结束,删除工程信息时,可能会将职工信息(如工资)一同删除(如果职工只参加了一项工程)。

4) 

这个关系是第几范式关系?

2NF

5) 

计算该关系上函数依赖集的最小覆盖;

Fm={AB->

C,A->

D}

6) 

将该关系分解成尽可能高的范式,并指明是第几范式?

分解为R1(A,B,C)和R2(A,D)    结果为4NF

对于学生选课关系,其关系模式为:

学生(学号,姓名,年龄,所在系);

课程(课程名,课程号,先行课);

选课(学号,课程号成绩)。

用关系代数完成如下查询。

1)求学过数据库课程的学生的姓名和学号。

2)求学过数据库和数据结构的学生姓名和学号。

3)求没学过数据库课程的学生学号。

4)求学过数据库的先行课的学生学号。

程序设计题 

现有关系数据库如下:

学生(学号,姓名,性别,专业、奖学金)

课程(课程号,名称,学分)

学习(学号,课程号,分数)

用关系代数表达式实现下列1—4小题;

用SQL语言实现下列5—8小题。

1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数;

2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分;

3.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;

4.检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业;

5.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;

6.检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业;

7.对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元;

8.定义学生成绩得过满分(100分)的课程视图AAA,包括课程号、名称和学分;

1.Π学号,姓名,课程名,分数(σ奖学金>

0∧专业=国际贸易(学生∞学习∞课程))

2.Π课程号,名称,学分(σ分数=100(学习∞课程))

3.Π学号,姓名,专业(σ奖学金<

=0∧分数>

95(学生∞学习))

4.Π学号,姓名,专业(学生)—Π学号,姓名,专业(σ分数<

80(学生∞学习))

5.SELECT学生.学号,姓名,专业

FROM学生,学习

WHERE学生.学号=学习.学号

AND学习.课程号=课程.课程号

AND奖学金<

=0AND分数>

95

6.SELECT学号,姓名,专业

FROM学生

WHERE学号NOTIN

(SELECT学号

FROM学习

WHERE分数<

80)

7.UPDATE学生

SET奖学金=1000

WHERE奖学金<

=0AND学号IN

WHERE分数=100)

8.CREATEVIEWAAA(课程号,名称,学分)

ASSELECT课程号,名称,学分

FORM课程

WHERE课程号IN

(SELECT课程号

设关系模式R<

A,B,C,D,E,F>

,函数依赖集F={AB→E,AC→F,AD→B,B→C,C→D}。

1)证明AB、AC、AD均是候选关键宇。

2)证明主属性C部分依赖于关键字AB,传递依赖于AD。

同时证明主属性D部分依赖于关键字AC,传递依赖于关键字AB。

1)∵=ABECDFABCDEF∈∴AB为码

∵=ABECDFABCDEF∈∴AC为码

∵=ABECDFABCDEF∈∴AD为码

2)∵B→C∴ABC

∵AD→B,B→C∴ADC

∵C→D∴ACC

∵B→C,C→D∴ABC

图中显示一张交通违章处罚通知书,根据这张通知书所提供的信息,设计一个E-R模型,并将这个E-R模型转换成关系数据模型,要求标注主码和外码。

司机(驾照号,姓名,地址,邮编,电话)

PK=驾照号

机动车(牌照号,型号,制造厂,生产日期)    

PK=牌照号

警察(警察编号,姓名)    

PK=警察编号

处罚通知(编号,日期,时间,地点,驾照号,牌照号,警告,罚款,暂扣,警察编号)    

PK=编号    

FK=驾照号,牌照号,警察编号

司机(驾照号,姓名,地址,邮编,电话)   

机动车(牌照号,型号,制造厂,生产日期)   

警察(警察编号,姓名)   

通知书(编号,日期,时间,地点,驾照号,牌照号,警察编号)   

PK=编号   

处罚(编号,处罚方式)   

PK=编号,处罚方式

设有一家百货商店,已知信息有:

l)每个职工的数据是职工号、姓名、地址和他所在的商品部。

2)每一商品部的数据有:

它的职工,经理和它经销的商品。

3)每种经销的商品数有:

商品名、生产厂家、价格、型号(厂家定的)和内部商品代号(商店规定的)。

4)关于每个生产厂家的数据有:

厂名、地址、向商店提供的商品价格。

请设计该百货商店的概念模型,再将概念模型转换为关系模型。

注意某些信息可用属性表示,其他信息可用联系表示。

概念模型如图所示。

关系模型为:

职工(职工号,姓名,住址,工作商品部);

商品部(商品部号,名称,经理职工号,经理名);

商品(商品代号,价格,型号,出厂价格);

生产厂家(厂名,地址);

销售(商品代号,商品部号);

生产(厂名,商品代号)。

职工:

职工号,姓名,住址;

商品部:

商品部号,名称;

商品:

商品代号,价格,型号,出厂价格;

生产厂家:

厂名,地址。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1