模式分解例题教学内容.docx

上传人:b****9 文档编号:25497233 上传时间:2023-06-09 格式:DOCX 页数:11 大小:138.70KB
下载 相关 举报
模式分解例题教学内容.docx_第1页
第1页 / 共11页
模式分解例题教学内容.docx_第2页
第2页 / 共11页
模式分解例题教学内容.docx_第3页
第3页 / 共11页
模式分解例题教学内容.docx_第4页
第4页 / 共11页
模式分解例题教学内容.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

模式分解例题教学内容.docx

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

模式分解例题教学内容.docx

模式分解例题教学内容

 

模式分解例题

模式分解例题

设有关系模式R(U,F),其中U={A,B,C,D,E},F={AB→C,B→D,D→E,C→B},试问R最高为第几范式,并解释原因?

如果R不是3NF或BCNF,要求将其分解为3NF和BCNF

关系R中的函数依赖如下图表示

A

B

C

D

E

R:

A,B→C;

B→D;

D→E;

C→B

第一范式规定关系的每一个分量必须是一个不可分的数据项。

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

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

所以不是第二范式

分解成第二范式

R1:

A,B→C;

C→B

R2:

B→D;

D→E;

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

分解成第三范式

R1:

A,B→C;

C→B

R21:

B→D

R22:

D→E

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

R1:

A,B→C;

C→B

R21:

B→D

R22:

D→E

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:

C→B

R21:

B→D

R22:

D→E

候选码是什么?

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

候选码:

(A,B)和(A,C)

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

职工(职工名)、工程(工程名)、时数(花费在工程上的小时数)和工资(职工的工资);一个参加记录描述一个职工花费在一个工程上的总时数和他的工资;另外,一个职工可以参加多个工程,多个职工可以参加同一个工程(用A、B、C、D分别代表属性职工、工程、时数和工资)。

请回答如下各问题:

1)   确定这个关系的关键字;AB

2)   找出这个关系中的所有函数依赖;AB->C,A->D

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

      (SELECT学号

      FROM学习

      WHERE分数=100)

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

      ASSELECT课程号,名称,学分

      FORM课程

      WHERE课程号IN

      (SELECT课程号

      FROM学习

      WHERE分数=100)

设关系模式R,函数依赖集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=牌照号

警察(警察编号,姓名)   

PK=警察编号

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

PK=编号   

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

处罚(编号,处罚方式)   

PK=编号,处罚方式

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

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

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

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

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

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

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

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

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

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

概念模型如图所示。

关系模型为:

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

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

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

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

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

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

职工:

职工号,姓名,住址;

商品部:

商品部号,名称;

商品:

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

生产厂家:

厂名,地址。

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

当前位置:首页 > PPT模板 > 商务科技

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

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