数据库(2)复习资料(11春季)(共14页).doc
《数据库(2)复习资料(11春季)(共14页).doc》由会员分享,可在线阅读,更多相关《数据库(2)复习资料(11春季)(共14页).doc(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据库(2)复习资料-上大11春季例1 设关系模式R(U,F),其中,U=A,B,C,D,E,I,F=AD,ABC,BIC,EDI,CE,求(AC)+。 例2 设有函数依赖集F=AC,CA,BAC,DAC,BDA,计算它等价的最小依赖集Fmin 。例3 设关系模式R(U,F)中,U=A,B,C,D,E,F=ABC,CD,DE,R的一个分解=R1(A,B,C),R2(C,D),R3(D,E)。 试判断具有无损连接性。5.5 设关系模式R(ABCD),如果规定,关系中B值与D值之间是一对多联系,A值与C 值之间是一对一联系。试写出相应的函数依赖。5.7 设关系模式R(AB
2、CD),F是R上成立的FD集,F= AB,CB ,则相对于F,试写出关系模式R的关键码。并说明理由。5.8 设关系模式R(ABCD),F是R上成立的FD集, F=AB,BC, 试写出属性集BD的闭包(BD)+。 试写出所有左部是B的函数依赖(即形为“B?”)。5.11 设关系模式R(ABC),F是R上成立的FD集, F= AC,BC ,试分别求F在模式AB和AC上的投影。5.18 设有一个记录各个球队队员每场比赛进球数的关系模式 R(队员编号,比赛场次,进球数,球队名,队长名)如果规定每个队员只能属于一个球队,每个球队只有一个队长。 试写出关系模式R的基本FD和关键码。 说明R不是2NF模式的
3、理由,并把R分解成2NF模式集。 进而把R分解成3NF模式集,并说明理由。*多值依赖,BCNF*数据库系统生存期;概念设计的目标,独立于,步骤;采用ER方法的数据库概念设计分三步;5.20设关系模式R(ABC)上有一个MVD A B,如果已知R的当前关系存在三个元组(ab1c1),(ab2c2),(ab3c3),那么这个关系中至少还应该存在那些元组?*逻辑设计的目的;与软硬件关系;*事务的定义;事务开始,结束语句*事务的ACID性质;*恢复的定义;恢复的基本原则;实现方法;*故障类型;*检查点机制;REDO操作;UNDO操作;运行记录优先原则;数据库的并发操作带来的问题;解决并发操作带来的问题
4、有两种技术;封锁技术有两种封锁;使用封锁技术可能带来的三个问题;*事务的调度;串行调度和并行调度;两段封锁协议;*数据库中的完整性指,完整性子系统的主要功能;完整性规则的组成;8.19 设教学数据库的关系如下:S(SNO,SNAME,AGE,SEX)SC(SNO,CNO,GRADE)C(CNO,CNAME,TEACHER)试用多种方法定义下列完整性约束: 在关系S中插入的学生年龄值应在1625岁之间。 在关系SC中插入元组时,其SNO值和CNO值必须分别在S和C中出现。 在关系C中删除一个元组时,首先要把关系SC中具有同样CNO值的元组全部删去。 在关系S中把某个SNO值修改为新值时,必须同时
5、把关系SC中那些同样的SNO值也修改为新值。8.20 在教学数据库中的关系S、SC、C中,试用SQL的断言机制定义下列两个完整性约束: 每位教师开设的课程不能超过10门。(2)不允许男同学选修WU老师的课程。(3)每门课程最多50名男同学选修(4)学生必须在选修Maths课后,才能选修其他课程。(5)每个男学生最多选修20门课程。*创建触发器:1在学生表S上定义更新触发器,使其阻止SNO列被修改:2在学习表SC上定义更新触发器,使其修改后的成绩不能低于原来的成绩:3为学习表SC设计“选课”和“退课”触发器来实现“按学分计算学费”的业务管理逻辑:/选课/退课*用SQL3触发器1创建供应关系SPJ
6、的一个触发器,在修改关系SPJ的PRICE值时,只能增加不能减少,否则拒绝修改:*SQL中的安全性机制例:设有三个关系模式: EMP(ENO,ENAME,AGE,SEX,ECITY) COMP(CNO,CNAME,CITY) WORKS(ENO,CNO,SALARY) 试用SQL的断言机制定义下列完整性约束: 每个职工至多可在3个公司兼职工作:每门公司男职工的平均年龄不超过40岁:不允许女职工在建筑公司工作:*用SQL3触发器【实例1】 某单位修改工资原则:如果职工工资修改后仍低于900元,那么,在修改后的工资基础上再增加原工资的5%,但不得超过900元(元组级触发器 )。【实例2】 在学习关
7、系SC表中修改课程号CNO,即学生的选课登记需作变化。在关系SC中的约束:要求保持每门课程选修人数不超过50。如果更改课程号后,违反这个约束,那么这个更改应该不做。(语句级触发器)例1: 把对关系S的查询、修改权限授给用户WANG,并且WANG还可以把这些权限转授给其他用户:例2:允许用户BAO建立新关系,并可以引用关系C的主键CNO作为新关系的外键,并有转让权限。例3:从用户WANG连锁回收对关系S的查询、修改权限。*DDBS特点;DDBS分类;DDB模式结构;映像体现的数据独立性;10.6 图10.1是有关教师(Faculty)、系(Department)和系主任(Director)信息的
8、对象联系图。(1)试用ORDB的定义语言,定义这个数据库。(2)试用ORDB的查询语言,分别写出下列查询的SELECT语句: 检索精通俄语(Russian)的教师工号和姓名。 检索复旦大学出访过瑞士(Switzerland)并且精通日语 (Japanese)的系主任。答案:例 1 设关系模式R(U,F),其中,U=A,B,C,D,E,I,F=AD,ABC,BIC,EDI,CE,求(AC)+。 解: (1) 令X=AC,则X(0)=AC。 (2) 在F中找出左边是AC子集的函数依赖: AD,CE。(3) X(1)=X(0)DE=ACDE。(4) 很明显X(1)X(0),所以X(i)=X(1),并
9、转向算法中的步骤(2)。 (5) 在F中找出左边是ACDE子集的函数依赖: EDI。(6) X(2)=X(1)I=ACDEI。(7) 虽然X(2)X(1),但是F中未用过的函数依赖的左边属性已没有X(2)的子集,所以,可停止计算,输出(AC)+ = X(2)=ACDEI。例2 设有函数依赖集F=AC,CA,BAC,DAC,BDA,计算它等价的最小依赖集Fmin 。 解: (1) 化单依赖右边的属性,结果为F1=AC,CA,BA,BC,DA,DC,BDA(2) 去除F1的依赖中左边多余的属性。对于BDA,由于有BA,所以是多余的。结果为F2= AC,CA,BA,BC,DA,DC(3) 去除F2中
10、多余的依赖。 因为: AC,CA,所以AC。 故: BA、 BC以及DA、 DC中之一为多余的。 取F3= AC,CA,BA,DA。 在F3中: 对于AC,F3-AC中A+=A; 对于CA,F3-CA中C+=C; 对于BA,F3-BA中B+=B; 对于DA,F3-DA中D+=D; 所以,F3中已没有多余的函数依赖。 即F的等价最小依赖集Fmin为: AC,CA,BA,DA。例3 设关系模式R(U,F)中,U=A,B,C,D,E,F=ABC,CD,DE,R的一个分解=R1(A,B,C),R2(C,D),R3(D,E)。 试判断具有无损连接性。解: (1) 首先构造初始表,如表 (a)所示。 (2
11、) 按下列次序反复检查函数依赖和修改M: ABC,属性A、 B(第1、 2列)中都没有相同的分量值,故M值不变; CD,属性C中有相同值,故应改变D属性中的M值,b14改为a4; DE,属性D中有相同值,b15、 b25均改为a5。 结果如表 (b)所示。(3) 此时第一行已为a1,a2,a3,a4,a5,所以具有无损连接性。5.5 设关系模式R(ABCD),如果规定,关系中B值与D值之间是一对多联系,A值与C 值之间是一对一联系。试写出相应的函数依赖。 解:从B值与D值之间有一对多联系,可写出函数依赖:DB 从A值与C值之间是一对一联系,可写出函数依赖:AC 和 CA5.7 设关系模式R(A
12、BCD),F是R上成立的FD集, F= AB,CB ,则相对于F,试写出关系模式R的关键码。并说明理由。 解:R的关键码为ACD。 因为从已知的F,只能推出ACDABCD。 (ACD)+=ABCD5.8 设关系模式R(ABCD),F是R上成立的FD集, F=AB,BC, 试写出属性集BD的闭包(BD)+。 试写出所有左部是B的函数依赖(即形为“B?”)。解:从已知的F,可推出BDBCD,所以(BD)+=BCD。 由于B+=BC,因此左部是B的FD有四个: B,BB,BC,BBC。5.11 设关系模式R(ABC),F是R上成立的FD集, F= AC,BC ,试分别求F在模式AB和AC上的投影。
13、答:AB(F)=(即不存在非平凡的FD)AC(F)= AC 5.18 设有一个记录各个球队队员每场比赛进球数的关系模式 R(队员编号,比赛场次,进球数,球队名,队长名)如果规定每个队员只能属于一个球队,每个球队只有一个队长。 试写出关系模式R的基本FD和关键码。 说明R不是2NF模式的理由,并把R分解成2NF模式集。 进而把R分解成3NF模式集,并说明理由。解:根据每个队员只能属于一个球队, 可写出FD: 队员编号球队名 根据每个球队只有一个队长,可写出FD: 球队名队长名 “每个队员每场比赛只有一个进球数”,这条规则也是成立的。因此还可写出FD: (队员编号,比赛场次)进球数 R的关键码为
14、(队员编号,比赛场次)。 R中存在这样的FD: (队员编号,比赛场次)(球队名,队长名) 队员编号 (球队名,队长名) 由于前一个FD是局部依赖,所以R不是2NF模式。 R应分解成: R1(队员编号,球队名,队长名) R2(比赛场次,队员编号,进球数) 此时,R1和R2都是2NF模式。(3)R2(比赛场次,队员编号,进球数)已是3NF模式。 但在R1(队员编号,球队名,队长名)中,存在两个FD: 队员编号 球队名 球队名 队长名 关键码为队员编号,存在传递依赖,因此R1不是3NF模式。 R1应分解成: R11(队员编号,球队名) R12(球队名,队长名) 这样,=R11, R12, R2,其中
15、每个模式均是3NF模式集。5.20设关系模式R(ABC)上有一个MVD A B,如果已知R的当前关系存在三个元组(ab1c1),(ab2c2),(ab3c3),那么这个关系中至少还应该存在那些元组? 解:(ab1c2)(ab1c3)(ab2c1)(ab2c3)(ab3c1)(ab3c2)*数据库系统生存期:规划,需求分析,概念设计,逻辑设计,物理设计,实现和运行维护;*概念设计的目标是:产生反映企业组织信息需求的数据库概念结构;概念模式是独立于计算机硬件系统和软件(DBMS)*概念设计的主要步骤:设计局部概念模式,设计全局概念模式,评审;*利用ER方法的数据库概念设计:设计局部ER模式,全局E
16、R模式,优化;*逻辑设计的目的是把概念设计阶段设计的全局ER模式转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构;与硬件无关与软件有关;*事务是构成单一逻辑工作单元的操作集合;事务以BEGIN TRANSACTION语句开始,以COMMIT语句或者ROLLBACK语句结束;COMMIT语句表示事务执行成功地结束(提交);ROLLBACK语句表示事务执行不成功地结束(回退);*事务的ACID性质:原子性(事务是一个不可分割的工作单元,由DBMS的事务管理子系统来实现);一致性(数据不会因事务的执行而遭受破坏,由DBMS的完整性子系统执行测试任务);隔离性(在多个事务并发执行时,
17、保证执行结果是正确的,由DBMS的并发控制子系统实现的);持久性(对数据库的更新永久的反映在数据库中,不会丢失,由DBMS的恢复管理子系统实现的);*恢复的定义:从破坏性,不正确的状态,恢复到最近一个正确的状态;恢复的基本原则:冗余即数据库重复存储;实现方法:备份和日志;*故障类型:事务故障(可预期和非预期),系统故障(硬件故障,软件错误或掉电,主存内容丢失,但不破坏数据库),介质故障(毁灭性破坏)*检查点机制;REDO操作:正向扫描日志文件,根据重做队列的记录对每一个重做事务重新实施对数据库的更新操作;UNDO操作:反向扫描日志文件,根据撤销队列的记录对每一个撤销事务的更新操作执行逆操作(对
18、插入操作执行删除操作,对删除操作执行插入操作,对修改操作则用修改前代替修改后的值);*运行记录优先原则:先写运行日志,再向数据库中写记录;写完所有运行日志后,才允许事务完成COMMIT处理;*数据库的并发操作通常带来三个问题:丢失更新问题;读脏数据问题;不一致分析问题;解决并发操作带来的问题有两种技术:封锁技术和时标技术;*封锁技术主要有两种封锁:排他型封锁(X锁)和共享型封锁(S锁);X锁:XFIND RCOMMIT(ROLLBACK),不允许其他事务T再对该数据加任何类型的锁;S锁:SFIND RUPDX R(把S锁升级为X锁)*使用封锁技术可能带来的三个问题:活锁问题(出现某个事务永远处
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 复习资料 11 春季 14
限制150内