《《数据库原理与应用》期末复习.ppt》由会员分享,可在线阅读,更多相关《《数据库原理与应用》期末复习.ppt(25页珍藏版)》请在金锄头文库上搜索。
1、数据库原理与应用数据库原理与应用期末复习期末复习第第1 1章章 绪论绪论 理解数据、数据库、理解数据、数据库、DBMSDBMS、DBSDBS的概念的概念DBMSDBMS的主要功能的主要功能了解数据管理技术发展的三个阶段及特点了解数据管理技术发展的三个阶段及特点数据库系统的特点数据库系统的特点数据模型的组成要素数据模型的组成要素理解实体和三类联系,理解实体和三类联系,E-RE-R图的绘制图的绘制理解层次、网状、关系模型的表示及其特点理解层次、网状、关系模型的表示及其特点理解数据库系统结构的三级模式和两级映像理解数据库系统结构的三级模式和两级映像第第2 2章章 关系数据库标准语言关系数据库标准语言
2、SQLSQL SQL SQL的概念和特点的概念和特点 建表,删除表,理解索引的适用建表,删除表,理解索引的适用 数据查询数据查询SELECTSELECT语句的使用(包括各个子句,连接和子语句的使用(包括各个子句,连接和子查询)查询) 数据的增数据的增insertinsert、删、删deletedelete、改、改updateupdate 理解视图的概念特点、视图的建立和操作理解视图的概念特点、视图的建立和操作第第3 3章章 关系数据库关系数据库 关系的相关概念(域、笛卡尔积、关系、主码、候选码、关系的相关概念(域、笛卡尔积、关系、主码、候选码、主属性、非主属性、全码等)主属性、非主属性、全码等
3、) 关系操作,基本关系操作、关系操作的特点关系操作,基本关系操作、关系操作的特点 理解关系的三类完整性约束理解关系的三类完整性约束 关系代数的运算(选择、投影、连接、除)关系代数的运算(选择、投影、连接、除)第第4 4章章 数据库安全性数据库安全性 了解数据库安全性控制的相关技术了解数据库安全性控制的相关技术 了解存取控制的内容和方法了解存取控制的内容和方法 自主存取控制方法的操作自主存取控制方法的操作 理解用户、角色、权限等概念理解用户、角色、权限等概念 第第5 5章章 数据库完整性数据库完整性 理解数据库完整性的概念和常用机制理解数据库完整性的概念和常用机制 掌握三类完整性约束的实现掌握三
4、类完整性约束的实现 理解触发器的概念、作用和实现理解触发器的概念、作用和实现 第第6 6章章 关系数据理论关系数据理论 1NF1NF的要求和存在问题的要求和存在问题 理解非平凡理解非平凡/ /平凡的函数依赖,部分函数依赖,平凡的函数依赖,部分函数依赖,多值依赖多值依赖 理解理解2NF2NF,3NF3NF,BCNFBCNF,4NF4NF的要求,并能按要求的要求,并能按要求进行模式分解进行模式分解理解数据库设计的基本步骤及各阶段的任务理解数据库设计的基本步骤及各阶段的任务绘制绘制E-RE-R图及合并分图及合并分E-RE-R图图掌握逻辑结构设计(掌握逻辑结构设计(E-RE-R图向关系模型的转换)图向
5、关系模型的转换)索引及聚簇索引的使用特点索引及聚簇索引的使用特点第第7 7章章 数据库设计数据库设计 第第9 9章章 数据库恢复技术数据库恢复技术 理解事务的概念和特性理解事务的概念和特性 了解四类故障的概念了解四类故障的概念 恢复机制的两个关键问题恢复机制的两个关键问题 理解建立冗余数据的常用方式理解建立冗余数据的常用方式 了解事务故障、系统故障、介质故障的恢复方式了解事务故障、系统故障、介质故障的恢复方式第第1010章章 并发控制并发控制 理解串行执行和并发执行的概念理解串行执行和并发执行的概念 理解并发控制带来的不一致性问题理解并发控制带来的不一致性问题 两类封锁类型及其操作实现两类封锁
6、类型及其操作实现 理解死锁、活锁的概念,死锁的诊断和排除方法理解死锁、活锁的概念,死锁的诊断和排除方法 理解并发调度的可串行化理解并发调度的可串行化/ /非串行化调度非串行化调度/ /冲突可串行冲突可串行化调度化调度 理解两段锁协议并使用理解两段锁协议并使用 理解封锁的粒度理解封锁的粒度 了解意向锁的概念了解意向锁的概念试卷格式和题型分布试卷格式和题型分布一、填空题(每空一、填空题(每空1分,共分,共20分)分) 基本概念(各章)基本概念(各章)二、判断题(正确标二、判断题(正确标,错误标,错误标,每题,每题1分,共分,共10分)分) 基本概念(各章)基本概念(各章)三、单项选择题(每题三、单
7、项选择题(每题2分,共分,共30分)分) 基本概念(各章)基本概念(各章)四、设计题(每题四、设计题(每题6分,共分,共24分)分) SQLSQL语句、关系代数操作、视图设计、关系规范化处理语句、关系代数操作、视图设计、关系规范化处理五、应用题(第五、应用题(第1题题8分,第分,第2题题8分,共分,共16分)分) E-RE-R图设计、并发控制图设计、并发控制典型试题分析(典型试题分析(设计题设计题)1.1.有如下三个关系模式:有如下三个关系模式: S S(SNOSNO,SNAMESNAME,AGEAGE,SEXSEX)属性含义是学号、姓名、年龄、)属性含义是学号、姓名、年龄、性别;性别; SC
8、 SC(SNOSNO,CNOCNO,GRADEGRADE)属性含义分别是学号、课程号、成绩;)属性含义分别是学号、课程号、成绩; C C(CNOCNO,CNAMECNAME)属性含义分别是课程号、课程名。)属性含义分别是课程号、课程名。用用SQL语言语言完成下列操作:完成下列操作:(1)求选修)求选修C4(课程号)的学生的平均年龄;(课程号)的学生的平均年龄;(2)删除所有选修)删除所有选修C1(课程号)课程的选课记录;(课程号)课程的选课记录;解答:(1 1)SELECT AVG(AGE) FROM S WHERE SNO INSELECT AVG(AGE) FROM S WHERE SNO
9、 IN (SELECT SNO FROM SC WHERE CNO= (SELECT SNO FROM SC WHERE CNO=C4C4) ) 或或 SELECT AVG(AGE) FROM S,SC SELECT AVG(AGE) FROM S,SC WHERE S.SNO=SC.SNO AND CNO= WHERE S.SNO=SC.SNO AND CNO=C4C4(2 2)DELETE FROM SC WHERE CNO=DELETE FROM SC WHERE CNO=C1C1典型试题分析(典型试题分析(设计题设计题)2.2.有如下四个关系模式:有如下四个关系模式: 学生:学生:S(
10、SNO,SN,AGE,SEX) S(SNO,SN,AGE,SEX) 属性是学号、姓名、年龄、性别;属性是学号、姓名、年龄、性别; 课程:课程:C(CNO,CN,PCNO) C(CNO,CN,PCNO) 属性是课程号、课程名、先修课课程号;属性是课程号、课程名、先修课课程号; 教师:教师:T(ENO,EN,DEPT) T(ENO,EN,DEPT) 属性是教师号、教师名、所属系;属性是教师号、教师名、所属系; 成绩:成绩:SC(SNO,CNO,ENO,G) SC(SNO,CNO,ENO,G) 属性是学号、课程号、教师号、成绩。属性是学号、课程号、教师号、成绩。试用试用关系代数关系代数完成下列操作:
11、完成下列操作:(1)求选修所有课程的学生的学号;)求选修所有课程的学生的学号;(2)查询选修了)查询选修了电子商务电子商务课程的学生的学号和姓名;课程的学生的学号和姓名;解答:(1) 或者 (2)典型试题分析(典型试题分析(设计题设计题)3.3.设有如下关系设有如下关系 学生:学生:Student(Sno,Sname,Sex,Sage,SdeptStudent(Sno,Sname,Sex,Sage,Sdept) ) 属性含义分别为学号、姓名、性别、年龄、系;属性含义分别为学号、姓名、性别、年龄、系; 课程:课程:Course(Cno,Cname,Cpno,CcreditCourse(Cno,C
12、name,Cpno,Ccredit) ) 属性含义分别为课程号、课程名、先修课程号、学分;属性含义分别为课程号、课程名、先修课程号、学分; 选修:选修:SC(Sno,Cno,GradeSC(Sno,Cno,Grade) ) 属性含义分别为学号、课程号、成绩。属性含义分别为学号、课程号、成绩。试用试用SQL语言语言完成下列操作。完成下列操作。(1)在)在SC表中插入一条选课记录:学号:表中插入一条选课记录:学号:03004, 课程号:课程号:3, 成绩:成绩:88;(2)建立一个视图)建立一个视图S_G,包括学生的学号,选课门数,平均,包括学生的学号,选课门数,平均成绩;成绩;解答:(1) IN
13、SERT INTO SC VALUES(03004,3,88)(2) CREATE VIEW S_G(Sno,C,A) AS SELECT SNO,COUNT(*) ,AVG(GRADE) FROM SC GROUP BY SNO典型试题分析(典型试题分析(设计题设计题)4.4.设有关系模式:设有关系模式:TEACHER(TEACHER(教师编号,教师姓名,电话,所在部门,借阅图书编号,教师编号,教师姓名,电话,所在部门,借阅图书编号,书名,借书日期,还书日期,备注书名,借书日期,还书日期,备注) )试完成以下分析:试完成以下分析:(1)教师编号是候选码吗?说明理由。)教师编号是候选码吗?说明
14、理由。(2)该关系模式是否存在部分函数依赖?如果存在,请写出)该关系模式是否存在部分函数依赖?如果存在,请写出至少两个?至少两个? 解答:(1)教师编号不是候选码。 候选码为(教师编号,借阅图书编号,借书日期),因为教师编号不能惟一标识一个记录。(2)存在部分函数依赖; 教师姓名,电话,所在部门对候选码是部分函数依赖, 因为教师姓名,电话,所在部门只完全函数依赖于教师编号; 书名对码是部分函数依赖,因为它完全函数依赖于借阅图书编号。 典型试题分析(典型试题分析(应用题应用题)1 1、学生包括学号,姓名,性别,年龄等基本信息;课程包括课程编号,、学生包括学号,姓名,性别,年龄等基本信息;课程包括
15、课程编号,课程名等;教师包括教师代号,姓名,性别,职称等;上述实体存课程名等;教师包括教师代号,姓名,性别,职称等;上述实体存在如下联系:一个学生可以选修多门课程,一门课程可为多个学生在如下联系:一个学生可以选修多门课程,一门课程可为多个学生选修;一个教师可讲授多门课程,一门课程由一个教师讲授;选修;一个教师可讲授多门课程,一门课程由一个教师讲授;试完成以下问题:试完成以下问题:(1)画出这个数据库的)画出这个数据库的E-R图。图。(2)将)将E-R模型转化为适当的关系模型,并给出候选关键字。模型转化为适当的关系模型,并给出候选关键字。解答:(1 1)E-RE-R图:图:(2 2)关系模式)关
16、系模式 学生(学号,姓名,性别,年龄)学生(学号,姓名,性别,年龄) 课程(课程号,课程名,教师号)课程(课程号,课程名,教师号) 教师(教师号,姓名,性别,职称)教师(教师号,姓名,性别,职称) 选修(学号,课程号,成绩)选修(学号,课程号,成绩)典型试题分析(典型试题分析(应用题应用题)2、考虑下列两个事务:T1:READ(A) T2:READ(B) READ(B) READ(A) IF A=0 THEN B:=B+1 IF B=0 THEN A:=A+1; WRITE(B) WRITE(A)设数据库的一致性要求是设数据库的一致性要求是A=0 or B=0,A、B的初值为的初值为0。(1)
17、写出这两个事务并发执行所有可能的正确结果;)写出这两个事务并发执行所有可能的正确结果;(2)写一个遵守两段锁协议且不发生死锁的并发调度策略;)写一个遵守两段锁协议且不发生死锁的并发调度策略;(3)写一个遵守两段锁协议发生死锁的并发调度策略。)写一个遵守两段锁协议发生死锁的并发调度策略。解答:(1)两个事务并发调度的正确结果有两种 T1-T2:执行结果 B=1,A=0 T2-T1:执行结果 A=1,B=0解答:(2) T1T2SLOCK(A)READ(A=0)SLOCK(B)READ(B=0)XLOCK(B)SLOCK(B)B=B+1等待WRITE(B=1)等待UNLOCK(A)等待UNLOCK(B)等待UNLOCK(B)等待READ(B=1)SLOCK(A)READ(A=0)XLOCK(A)WRITE(A=0)UNLOCK(B)UNLOCK(A)UNLOCK(A)解答:(3)T1T2SLOCK(A)READ(A=0)SLOCKB)READ(B=0)SLOCK(B)READ(B=0)SLOCK(A)READ(A=0)XLOCK(B)等待XLOCK(A)等待