首页 > 数据库原理与设计 P75作业 学号2013211466 班级0401302

数据库原理与设计 P75作业 学号2013211466 班级0401302

习题5

2.

(1)写出关系模式:

学生:R1=

U1={学号,姓名,出生日期,系名,班号,宿舍区};

F1={学号->(姓名,出生日期,系名,班号,宿舍区),班号->系名,系名->宿舍区};

班级:R2=

U2={班号,专业名,系名,人数,入校年份};

F2={班号->(专业名,人数,入校年份),专业名->系名,(专业名,入校年份)->(人数,班号)};

:R3=

U3={系名,系号,系办公室地点,人数};

F3={系名->(系号,系办公地点,人数),系号->(系名,系办公地点,人数)};

学会:R4=

U4={学会名,成立年份,地点,人数,学生参加某会入会年份};

F4={学会名->(成立年份,地点,人数,学生参加某会入会年份)};

(2)写出各模式最小函数依赖集,是否存在传递依赖,左部为多属性时讨论是完全函数依赖还是部分函数依赖。

F1m=F1;存在传递函数。

F2m={班号->(专业名,人数,入校年份),专业名->系名,(专业名,入校年份)->人数};存在传递依赖。

(专业名,入校年份)->人数 :完全函数依赖。

F3m={系名->(系号,系办公地点,人数};不存在传递依赖。

F4m=F4; 不存在传递依赖。

(3)

关系模式              候选码                外码                      R1R2R3R4全部无全码

学生R1                 学号                    系名 、班号              

班级R2                 班号                    系名              

系R3                    系名、系号          无

学会R4                 学会名                 无

3.

(1)R的候选码为BD;

(2)求F的最小函数依赖集:

解:分解为:A->C,C->A,B->A,B->C,D->A,D->C,BD->A;

从左至右依次检测可去掉多余的函数依赖BD->A,得最小函数依赖集

{A->C,C->A,B->A,B->C,D->A,D->C};

(3)第三范式:每个非主属性既不部分函数依赖于码,也不传递函数依赖于码;

p={ABC,ACD,ABD}因为BD属于BDA,所以保持函数依赖的3NF为{ABC,ACD,ABD};

5.求F的最小函数依赖集

分解函数依赖集为:{AB->E,BC->D,BE->C,CD->B,CE->A,CE->F,CF->B,CF->D,C->A,D->E,D->F,};

从左至右依次考察是否能去掉C->A,D->E,D->F;(不能);

从左至右,对AB->E,去掉A,B+={ABCDEF},所以A可以去掉,以此类推,得最小函数依赖集:

Fm={B->E,C->D,E->C,E->F,F->B,C->A,D->F};

8.找出R的主码,将R分解为具有无损连接性的BCNF。

(1)R的主码:IB;

(2)因为IB是主码,先分解 S->D; R1={SD}, F1={S->D}; R2={BOISQ}, F2={I->S, IS->Q, B->Q} ;

显然,F2不属于BCNF,再分解 IS->Q, R3={ISQ}, F3={IS->Q}; R4={BOIS}, F4={I->S, B->O} ;

所以最终分解为:{SD,ISQ,BOIS}

转载于:https://www.cnblogs.com/aline/p/4520070.html

更多相关:

  • 天地会珠海分舵注:随着微信应用号的呼之欲出,相信新一轮的APP变革即将发生。从获得微信应用号邀请的业内人士发出来的一张开发工具源码截图可以看到,reacjs及其相应的FLUX框架altjs很有可能会成为前端开发主流。作为行业内人士,自己之前从来没有做过web及webapp开发,所以这方面算是一名小白。这段时间在忙完工作之余准备储备...

  • 草色新雨中, 松声晚窗里。之前我们学习 Power Query 都是用鼠标就完成了很多复杂的操作。虽然 PowerQuery 已经将大部分常用功能内置成到功能区。基本能完成我们大部分的报表自动化功能。但是总有些复杂的或者个性化的问题是开发团队没有预先想到的,这时我们就需要学习 M 语言。一、M 语言在哪里?M语言的函数公式有三个地...

  • 前言从2020年3月份开始,计划写一系列文档--《小白从零开始学编程》,记录自己从0开始学习的一些东西。第一个系列:python,计划从安装、环境搭建、基本语法、到利用Django和Flask两个当前最热的web框架完成一个小的项目第二个系列:可能会选择Go语言,也可能会选择Vue.js。具体情况待定,拭目以待吧。。。基本概念表达式表...

  • 1.1函数1.1.1什么是函数函数就是程序实现模块化的基本单元,一般实现某一功能的集合。函数名:就相当于是程序代码集合的名称参数:就是函数运算时需要参与运算的值被称作为参数函数体:程序的某个功能,进行一系列的逻辑运算return 返回值:函数的返回值能表示函数的运行结果或运行状态。1.1.2函数的作用函数是组织好的,可重复使用的,用来...

  • 原标题:基于Python建立深度神经网络!你学会了嘛?图1 神经网络构造的例子(符号说明:上标[l]表示与第l层;上标(i)表示第i个例子;下标i表示矢量第i项)单层神经网络图2 单层神经网络示例神经元模型是先计算一个线性函数(z=Wx+b),接着再计算一个激活函数。一般来说,神经元模型的输出值是a=g(Wx+b),其中g是激活函数(...

  • 在学习MySQL的时候你会发现,它有非常多的函数,在学习的时候没有侧重。小编刚开始学习的时候也会有这个感觉。不过,经过一段时间的学习之后,小编发现尽管函数有很多,但是常用的却只有那几个。今天小编就把常用的函数汇总一下,为大家能够能好的学习MySQL中的函数。MySQL常使用的函数大概有四类。时间函数、数学函数、字符函数、控制函数。让我...