上海大学大数据库2原理研讨+作业地个人解答_第1页
上海大学大数据库2原理研讨+作业地个人解答_第2页
上海大学大数据库2原理研讨+作业地个人解答_第3页
上海大学大数据库2原理研讨+作业地个人解答_第4页
上海大学大数据库2原理研讨+作业地个人解答_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1周(第五章:函数依赖.推理规则、闭包)二、研讨课:1. 假设员工关系EMP (员工号,部门,部门,部门负责人,家庭住址,家庭成员,成员 关系)如下表所示。如果一个部门可以有多名员工,一个员工可以有多个家庭成员,那么 关系EMP属于数据冗余问题:为了解决这一问题,应该将员工关系EMP分解为(员工号, 部门,家庭地址,家庭成员,成员关系)(部门,部门负责人,部门),画出ER图丄上?期宁过了,很简单,懒得画主外键(主键:协丁月外键:部门)(E 键:部门o员工 号部门部门部门负 责人家庭住址家庭成员成员关系0011晓明开发部8083560012海淀区1号大军父亲0011晓明开发部808356001

2、2海淀区1号胡敏铮母亲0011晓明开发部8083560012海淀区1号晓丽妹妹0012昊俊开发部8083560012路15号吴胜利父亲0012昊俊开发部8083560012路15号壬若连母亲0021立丽市场部8083580021雁塔路8号国庆父亲0021立丽市场部8083580021雁塔路8号罗明母亲0022王学强市场部8083560021太白路2号王国钧父亲0031吴俊财务部808360科技路18号吴鸿翔父亲2. 判断 F二A-BC, B-A, AD-E和 G=A-BC, B-A, BD-E是等价的因为B-A,所以BD-AD因为AD-E,所以BD-E,所以。3. 设关系模式R具有n个属性,在

3、模式R上可能成立的函数依赖有个?其中平凡 的FD有(2)个?非平凡的FD有(3)个?以上3点都需说明为什么 三.作业:1. 设函数依赖集 F二AB-E,AC-G,AIBG,B-C,C-D,试证 AC-G 是冗余的。AD-BG C-D,所以 AC-BG,所以 AC-G,所以冗余2. 课本Page 124:习题53(1)X-0永远满足。(2)0-,则属性Y对于各元组的值相冋。(3)0-0为平凡的函数依赖,永远满足。3. 课本 Page 124:习题 5.8证明:(反证法)假设存在A-B那么A-AB,关系模式R的候选码即为A,不是全码假设不存在,R不满足A-B同理:R不满足B-A第2周(第五章:、关

4、键码、最小函数依赖集)二、研讨课:2. 设有函数依赖集:F=AB-C, C-A, BC-D, ACD-B, D-EG, BE-C, CG-BD, CE-AG,计算其 等价的最小依赖集。1、把右边都写成单属性AB-C, C-A, BCD, ACD-B, D-E, D-G, BE-C, CGB CG-D, CE-A, CE-G2、去左边冗余属性C-A, CE-A冗余,去掉CE-A,所以AB-C, C-A, BC-D, ACPzB, D-E, D-G, BE-C, CG-B, CG-D, CE-G3、去冗余的FDD-G 所以 CD-CG, CG-B,所以 CD-B所以 ACD-B,所以 ACD-B

5、冗余所以AB-C, C-A, BC-D, D-E, D-G, BE-C, CG-B, CG-D CE-G3. 已知R(ABODE), F=A-B, BC-A, A-D,求R的全部非主属性。L: CR: DN: ELR: A,BCE+二CEACE+二ABCDEBCE+二ABCDE所以非主属性为D三、作业:1. 已知 F二BD, AD, DACB, CD-*A,求 Fmin。1、右边单属性BD, AD, DA*C, DAB, CD-*A2、左边冗余属性AD, DAC, DA*B,所以 AC, AB所以BD, AD, A-*Ct AB, CD-*A3、冗余的FD:无2. 如果关系模式R(A,B)的候

6、选码为(A,B)(即为全码),那么该关系模型一左不满足A -B,或 B-A.没什么好说的3. 设有 R(ABCDE), F= A-C, B-C, C-D, CE-A, DE-C ,求候选码。L: B,ER:N:LR: A,CQBE+=ABCDE所以BE第3周(第五章:分解无损和保持FD)二、研讨课:1. R (ABCDE), F= AB-C, AC-E, C-B, E-C, D-C, P = ABC, AD, AE, BE, DE,求 P 的分解无 损性ABCDEABCala2a3b41a5ADala2a3a4a5AEala2a3b43a5BEbl4a2a3b44a5DEbl5a2a3a4a5

7、ABCDEABCala2a3b41a5ADala2a3a4a5AEala2a3b43a5BEbl4a2a3b44a5DEbl5a2a3a4a52. 关系模式 R (U,F),其中 U= W, X, Y, Z, F=M-Y,W-X,X-Z,Y-W o 关系模式 R 的候选键是一(1),(2)是无损连接并保持函数依赖的分解。L:R:ZN:LR:W, X,YW+二WXYZY+二WXYZx+=xz候选键:W和Y出发点:x-z不妨大胆的假设Rl,R2使得无损联结,也就是R1QR2二X, R2-R1=Z就有WXY与XZ验证依赖性nWXY (F) =WXTW-X,Y7nXZ (F) =X-*Z)Ji WXY

8、 (F) U orXZ (F) =F大功告成!3. 举出一个满足无损但不保持FD的分解例子,并说明分解的不合理?举出一个保持FD但 不满足无损的分解例子,并说明分解的不合理。没什么好说的!三、作业:1. 证明BCNF左是3NF。反证法,假设不是,存在传递然而传递的中间不是候选键的话语BCNF矛盾所以。到时候自己编一个BCNF2. 给定关系模式 R,其中:U= A, B, C, D , F= A-B, B-C, C-D, D-A,判断关系模式 R的分解p= AB,BC,CD是否具有依赖保持性。求投影,方法看研讨3. 课本 Pagel25:习题 5. 15画表格,方法如研讨4. 已知 R, U=

9、A, B, C, D, E , F二 AB-C , D-E, C-D, R 的一个分解 P = (Rl(AfB,C), R2(C,D), R3(D,E)。判定分解P是否为无损连接的分解和保持函数依赖性。 画表格+求投影第4周(第五章:式分解,多值依赖自学)二、研讨课:1. 如下关系模式R表示某学校学生及宿舍的情况R(学号,系,宿舍楼,宿舍房号,协会)满足的函数依赖集合为F=学号一,学号一系,宿舍楼一系,学号一宿舍房号,宿舍房号一宿舍楼 试将R规化为满足BCNF的关系模式。学号,协会是候选键,所以F肯定不是BCNF(学号,协会)一(,宿舍房号),(宿舍房号一宿舍楼)(宿舍楼一系)2. 假设某旅馆

10、业务规定,每个账单对应一个顾客,账单的发票号是惟一的,账单中包含一 个顾客、到达日期和顾客每日的消费明细,账单的格式如图发票号到达日前顾客消费日期项目金额1234562014/4/1艾尚达2014/4/1房租2801234562014/4/1艾尚达2014/4/1餐费561234562014/4/1艾尚达2014/4/1上网101234562014/4/1艾尚达2014/4/2餐费180如果根据上述业务规则,设计一个关系模式:R (发票号,到达日期,顾客,消费日期,项目,金额)。试回答下列问题:(1)找岀R的候选键。发票号,项目,消费日期(2)判断R最高可达到第几式,为什么?3, NO WHY

11、(3)给出R的一个可能的3NF分解。R1(发票号,项目,消费日期)一(到达时间,顾客)R2 (项目一金额)(4)给出R的一个可能的BCNF分解。R1(发票号,项目,消费日期)一(到达时间,顾客)R2 (项目一金额)三、作业:1. 说明以下说法是否正确以及理由:(1)所有候选码都为单个属性的关系模式一左满足2NF;、左边为单属性不可能为局部依赖(2)二目关系一定是满足3NF的:设二目关系为R(A,B),则候选码的可能性为(A,B)、A或B情况一:候选码为(A,B),不存在非主属性,故R左满足3NF;情况二:候选码为A, R满足A-B,不存在传递A-B,故R左满足3NF:情况三:类似情况二。(3)

12、候选码为全码的关系模式一定是满足BCNF的关系模式:因为关系模式是全码,所以任何属性或属性组对候选码都是直接函数依赖,根据BCNF的定 义,此关系模式一泄满足BCNFc2. 已知关系R(A,B,C,D,E,F,G)上的函数依赖集F二AC-BEFG, A-B, C-DEF, E-F试将R分解成一组等价的3NF模式(1) 先求 Fmin1、右边为单属性AC-Bt AC-E, AC-F, AC-G, A-B, C-D, C-E, C-F, E-F2、去左边重复AC-B, AC-E, AC-F 冗余所以 AC-G,A-B,C-D, C-E, C-F, E-F3、去冗余FDC-E, E-F,所以 C-F

13、 冗余所以 AC-G,A-B,C-D, C-E, E-F(2) 求候选码L:A,CR:B, D, E, FN:LR:AC+二ABCDEFG所以候选码是AC(3) 要满足 2NF, 3NF,所以 R1 (AC-G) R2 (A-B) R3 (C-D C-E) R4 (E-F)3. 设关系模式 R(A, B, C, D), F= A-C, A-B, B-D,将 R 分解为 BCNF.1、候选码L:AR:C,DN;LR:BA+=ABCD所以候选码为A2、分解R1 -B) R2 (B-*D)4. 课本 Pagel25:习题 5.18。懒得做了!做法跟上面差不多的第5周(第七章:数据库设计;第八章:事务

14、概念)三、作业:1. 已知 R(A,B,C,D,E,F,G,H,I, J), F 二AB-E, ABE-FG, B-FI, C-J, CJ-1, G-H,求最小 函数依赖集,然后分解成三式的关系模式集合,并判断该分解是否具有无损连接性。2. 如下给出的关系R为第几式?是否存在操作异常?请举例说明。若存在,则将其分解为 高一级式。分解后的式中是否可以避免这些操作异常?工程号材料号数量开工日期芫工日期价格P11142000. 52001. 5250P11262000. 52001 5300P113152000. 52001 5180P21162000112001 12250P214182000.

15、112001. 12350数据冗余(工程号,材料号,数量一(开工日期,完工日期,价格) 这是第一式修改成(工程号一(开工日期,完工日期)(工程号,材料号,数量一价格)3. 课本 PagelTO:习题 7.15。第6周(第八章:故障恢复)二、研讨课:1. 某数据库配置时把数据库文件、备份文件、日志文件放在同一个硬盘上,是否合适?并 说明理由。放在同一台汁算机的不同硬盘上呢?从故障恢复的角度应该如何配置合理?至 少哪两类文件不应放在同一硬盘上?不合适,当发生介质故障时候,如果放在同一个硬盘上,数据库文件就无法补救回来。也不是很合适,当整台电脑被病毒破坏时,数据库文件、备份文件、日志文件也是容易被损

16、坏的。数据库备份放在共享文件夹里,共享指泄给另外一台电脑。数据库文件,备份文件。及时日志文件丢失损坏,之前备份的文件也有很多数据但如果备份文件都不在了,日志文件也是没用的。2. 假左系统采用检査点方法,Tl、T2和T3是并发事务,在讣时发生系统故障,最近的检查 点在B时(见图);A、B、C和D都是数据库中的数据项,初值依次是800、300、70和80, 说明所需的恢复工作。时刻TlT2T3说明tlread(B)Tl开始t2B=B*2t3write(B)uread(A)U: T2开始tsA=A-100t6write(A)t7COMMITtsg:检査点t9read(D)t9: T3开始tioD=D

17、-100tliwrite(D)tl2read(A)tl3A=A+10tl4write(A)tl5COMMITtl6read(A)tl7read(B)tisB=B+Atl9write(B)t19:发生故障 答:(1)事物T2不必恢复,因为它的更新在检查点之前就写到了数据库.(A=7OO)(2) 事物T3必须撤销,因为T3还未做完,撤销事物T3对db的修改,就恢复D=80(3) 事物T1必须重做,因为T1做完,但是它的结束在下一个结束点之前,对DB修改仍 然在存缓冲区,还没写到磁盘。重做A=710.参照书本175-176面各种悄况的解决方法3. 假泄系统采用检查点方法,当系统朋溃时产生了以下并发事

18、务的日志记录。(1)请给出系统在恢复后搜索日志时所形成的重做队列和撤销队列。(2)谙给岀恢复后各数据项的值。T2T4重做,T3撤销A=600 D=130 C=90 B二190三、作业:1. 课本Pagel95:习题84。2. 课本 Pagel95:习题 8.5。3. 为什么系统故障恢复时先UNDO再REDO操作?请举日志队列说明第7周(第八章:并发控制)二、研讨课:1.判断下列并发调度是不是可串行化调度,为什么?修改如下并发调度为可串行化调度时间事务Tl数据库中值事务T2toA=10. B=2tlRead At2Read Bt3Read AUUpdate A=A+1tsRead Bt6Upda

19、te B=A+Bt?Update B=B+12. 设T1,T2, T3是如下三个事务:Tl: A:=A+2;T2:A:=A*2;T3: A:二A; 设 A 的初始值为 0.1)若三个事务允许并发执行,则有多少种可能的正确的结果,请分別列举出来2)请给岀一个可串行化的调度,并给出执行结果3)请给岀一个非串行化的调度,并给出执行结果4)若三个事务都遵守两段锁协议,请给岀一个产生死锁的调度。1) A33二61231613282134231231243212结果为4种,为2、4. 8. 162)T1T2T3Slock A, R(A)=0Unlock AXlock ASlock AA=A+2, W(A)

20、=2等待Unlock A等待获得Slock AR(A)=2, Unlock AXlock ASlock AA=A*2, W(A)=4等待Unlock A等彳#获得Slock AR(A)=4, Unlock AXlock AA=A*2, W(A)=16Unlock A3)T1T2T3Slock A, R(A)=0 Unlock AXlock ASlock AR(A)=0等待获得Xlock AUnlock AA=A+2, W(A)=2Slock AUnlock AXlock A等待获得Slock AR( A)=2, Unlock AXlock A等待A=A*2, W(A)=4等待获得Xlock A

21、A=A*2, W(A)=0Unlock AUnlock AT1T2T3Slock AR(A)=0Xlock A等待Slock AR(A)=0等待Xlock A 等待等待Slock AR(A)=0 Xlock A 等待 3.操作序列Tl、T2、T3对数据A、B、C并发操作如下所示,T1与T2间并发操作(1) T2与T3间并发操作(2).修改如下并发调度为可串行化调度时间TlT2T3tl读 A=50t2读 B=200t3X1=A+Bt4读 B二200t5读 B=200t6B二B-100t7写Bt8读 A=50t9读 B二100tlOX1=A+Btil验算不对B二B+50tl2写B三、作业:1.课本

22、 Pagel96习题8. 10c2.课本 Pagel96习题811。3.课本 Page 196习题8. 12c第8周(第八章:完整性和安全性;第九章分布式自学)二、研讨课:1. 写有关school数据库的完整性约朿(1)确保每个学生在同一学期同一门课只能选一个老师开设的课程。 create assertion asset check(not exists( select *from c as a,e as bwhere a.xh = b.xh and a.xq = b.xq and a.kh = b.khand a.gh b.gh(2)确保每门课程每年只开设一次。Create assertio

23、n ass2 check(lall (select count(distinct (A.课号)From开课表asA开课表as BWhere A 学年=B 学年And A.课号=B.课号Group by学年,课号);2设有三个关系模式:STUDENT (SNO.SNAME.AGE.SEX.SADDRDNO)COURSE (CNO,CNAME.CHARA,CREDITDNOTERMTNAME)GRADE (SNOCNO.TERMPGRADEEGRADE.GGRADE) 中文含义:学生(学号,年龄,性别,住址,所在系), 课程(课程号,课程名,课程性质,学分数,开课系,开课学期,教师), 成绩(学号

24、,课程号,开课学期,平时成绩,考试成绩,总评成绩)。 请用指定的方法定义下列完整性约朿:1、每个学期每个学生至多可选8门课程(用断言)。Create assertion assl check(8=all(select count(distinct (eno)From gradeGroup by sno.tcrm);2、如果总评成绩修改后低于60分,那么,如果平时成绩大于80分,在修改后的 总评成绩上再增加考试成绩的8%,但不得超过60分(用SQL3触发器)。create trigger triglafter update of ggrade on gradereferencingold as oldtuplenew as newtuplewhen (ncwtuple.ggrage80)u

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论