数据库原理-总复习教学课件

上传人:痛*** 文档编号:241431111 上传时间:2024-06-25 格式:PPT 页数:31 大小:448.50KB
返回 下载 相关 举报
数据库原理-总复习教学课件_第1页
第1页 / 共31页
数据库原理-总复习教学课件_第2页
第2页 / 共31页
数据库原理-总复习教学课件_第3页
第3页 / 共31页
点击查看更多>>
资源描述
数据库原理数据库原理 总复习总复习26、我们像鹰一样,生来就是自由的,但是为了生存,我们不得不为自己编织一个笼子,然后把自己关在里面。博莱索27、法律如果不讲道理,即使延续时间再长,也还是没有制约力的。爱科克28、好法律是由坏风俗创造出来的。马克罗维乌斯29、在一切能够接受法律支配的人类的状态中,哪里没有法律,那里就没有自由。洛克30、风俗可以造就法律,也可以废除法律。塞约翰逊第一章第一章 绪论复习绪论复习数据库系统的特点数据库系统的特点数据的结构化数据的共享性高,冗余度低,易扩充数据的独立性高数据由DBMS统一管理和控制数据模型的数据模型的3要素要素数据结构数据操作数据的约束条件6第一章第一章 绪论复习绪论复习概念模型概念模型 实体、实体型、属性、码、实体-联系图(E-R图)。层次模型、网状模型的优缺点层次模型、网状模型的优缺点数据库系统的三级模式结构数据库系统的三级模式结构外模式:用户模式模式:逻辑模式内模式:存储模式在三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。7第二章第二章 关系数据库关系数据库 复习复习关系的概念关系的概念 域的笛卡尔积D1D2 Dn的子集。候选码、主码、外部码候选码、主码、外部码关系模式、关系数据库关系模式、关系数据库关系模型的完整性规则关系模型的完整性规则 实体完整性规则、参照完整性规则、用户定义完整性规则查询的关系代数表示查询的关系代数表示 关系代数的基本运算关系代数的基本运算 关系除法运算8第二章第二章 关系数据库关系数据库 复习复习例题:有一个学校数据库,包括学生、课程、教师、学生成绩4个关系。学生关系S(sno,sn,age,sex),包括属性学号、学生姓名、年龄、性别;课程关系C(cno,cn,pcno),包括属性课程号、课程名、先修课课程号;教师关系T(eno,en,dept),包括属性职工号、职工姓名、系别;学生成绩关系SC(sno,cno,eno,g),包括属性学号、课程号、任课教师职工号和学生成绩。分别用完成下列操作:1、求选修所有课程且成绩全部为A的学生姓名。2、求选修王平老师所讲授的所用课程的学生姓名。3、求不选修信息系老师所开设课程的学生姓名。91.2.3.或 10第三章第三章 SQL语言语言 复习复习用用SQL语句正确完成复杂的查询语句正确完成复杂的查询基本表和视图的区别基本表和视图的区别基本表是独立存在的表,在基本表是独立存在的表,在SQL中一个关系对应一中一个关系对应一个表。个表。视图是从一个或多个基本表中所导出的表。视图视图是从一个或多个基本表中所导出的表。视图本身并不独立存储数据,是一个虚表。即数据库本身并不独立存储数据,是一个虚表。即数据库中只存放视图的定义而不存放其所对应的数据。中只存放视图的定义而不存放其所对应的数据。这些数据仍然存放在导出视图的基本表中。视图这些数据仍然存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以像使用基本表在概念上与基本表等同,用户可以像使用基本表那样使用视图,可以在视图上载定义视图。那样使用视图,可以在视图上载定义视图。11第三章第三章 SQL语言语言 复习复习例题例题 设有学生表S(SNO,SN)(SNO是学号,SN是姓名)和学生选修课程表SC(SNO,CNO,CN,G)(其中CNO是课程号,CN是课程名,G是成绩),试用SQL语言完成以下操作。1、建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按照CNO的升序排序.2、在视图V-SSC上查询平均成绩在90分以上的学生的SN,CN和G。解答:解答:1、create view V-SSC(SNO,SN,CNO,CN,G)as select S.SNO,SN,CNO,CN,G from S,SC where S.SNO=SC.SNO order by CNO;2、select SN,CN,G from V-SSC group by SNO having avg(G)90;12第三章第三章 SQL语言语言 复习复习例题:例题:现有关系数据库如下:S(SNO,SN,STATUS,CITY),P(PNO,PN,COLOR,WEIGHT)J(JNO,JN,CITY)SPJ(SNO,PNO,JNO,QTY)其中,S为供应商,为供应商,P为零件,为零件,J为为工程项目,工程项目,SPJ为工程订购零件为工程订购零件的订单的订单,其语义为某供应商向某个工程项目供应某种零件,试用SQL完成下列操作:1、求为工程项目J1提供红色红色零件的供应商号码。2、求使用供应商S1所提供的零件的工程项目名称。3、求供应商与工程项目所在城市相同城市相同的供应商所提供的零件的号码。4、求至少至少有一个和工程项目不在同一不在同一个城市个城市的供应商提供零件的工程项目代号。select distinct SPJ.SNO from SPJ,P where P.PNO=SPJ.PNO and SPJ.JNO=J1 and P.COLOR=红;select J.JN from J,SPJ where J.JNO=SPJ.JNO and SPJ.SNO=S1;select distinct SPJ.PNO from S,J,SPJ where S.SNO=SPJ.SNO and J.JNO=SPJ.JNO and S.CITY=J.CITY;Select distinct SPJ.JNO from S,J,SP where S.SNO=SPJ.SNO and J.JNO=SPJ.JNO and S.CITYJ.CITY;13第三章第三章 SQL语言语言 复习复习例题:例题:现有关系模式:EMP(empno,ename,mgr,sal,hiredate),DEPT(dname,deptno,loc)在以下视图中,不可能更新的视图是_。A.视图V1,由1980年以后参加工作的雇员所组成B.视图V2,由部门号和各部门的平均工资组成C.视图V3,由雇员姓名和其领导者姓名所组成D.视图V4,由薪金超过所有雇员平均薪金的雇员所组成答案:答案:B,D因为因为B中视图中视图V2的一个字段来自聚集函数的一个字段来自聚集函数AVG,所以不能更新。,所以不能更新。D中视图中视图V4含有内层嵌套,且涉及的含有内层嵌套,且涉及的表是导出表是导出该视图的基本表,所以也不能该视图的基本表,所以也不能更新。见书更新。见书p12414第四章第四章 数据库的安全性数据库的安全性 复习复习例题:例题:现有两个关系模式职工职工(职工号职工号,姓名姓名,年龄年龄,职务职务,工资工资,部门部门号号)部门部门(部门号部门号,名称名称,经理名经理名,地址地址,电话电话)试用SQL的grant和revoke语句(加上视图机制)完成以下授权定义或存储控制功能。1、用户王明对两个表拥有select权利 grant select on 职工职工,部门部门 to 王明王明2、用户刘星对“职工”表拥有select权限,对“工资”字段拥有更新权限 grant select,update(工资工资)on职工职工 to刘星刘星用户周平拥有两个表的所有权限(读写、插入、修改、删除数据),并拥有为其他用户授权的权限。grant all privileges on 职工职工,部门部门 to 周平周平 with grant option4、用户杨澜拥有从每个部门职工中select最高工资,最低工资,平均工资的权限,但是不能查看每个人的工资。首先建立一个视图,然后对这个视图定义杨澜所拥有的存取权限。create view 部门工资部门工资 as select 部门部门.名名称,称,MAX(工资工资),MIN(工资工资),AVG(工资工资)from 职工,部门职工,部门 where 职工职工.部门号部门号=部部门门.部门号部门号 group by 职工职工.部门号部门号 grant select on 部门工资部门工资 to 杨澜杨澜;15第五章第五章 数据库完整性数据库完整性 复习复习假设有以下两个关系模式,职工职工(职工号职工号,姓名姓名,姓名姓名,职务职务,工资工资,部门号部门号),其中职工号为主码;其中职工号为主码;部门部门(部门号部门号,名称名称,经理名经理名,地址地址,电话电话),其中部门号为主码,其中部门号为主码要求在模式中完成以下完整性约束条件的定义:(1)定义每个模式的主码;(2)定义参照完整性;(3)定义职工年龄不得超过60岁。create table DEPT (deptno number(2),deptname varchar(10),manager varchar(10),phonenumber char(12),constraint pk_dept primary key(deptno);create table emp(empno number(4),ename varchar(10),age number(2),constraint c1 check(age部门编号 (商店编号,部门编号)-负责人 (商店编号,商品编号)-商品库存量找出关系模式R的候选码。R的候选码的候选码:(商店编号,商品编号)17第六章关系数据理论第六章关系数据理论 复习复习 假设某商业集团数据库有关系模式R如下:R(商店编号商店编号,商品编号商品编号,商品库存数商品库存数量量,部门编号部门编号,负责人负责人)如果规定:1、每个商店的每种商品只在该商店的一个部门中销售。2、每个商店的每个部门只有一位负责人。3、每个商店的每种商品只有一个库存数量。问关系模式R最高可达第几范式,为什么?由于由于R中存在非主属性中存在非主属性“负责人负责人”对候选码对候选码(商店编号商店编号,商品编号商品编号)的函数依赖,所以的函数依赖,所以R属于属于2NF,R不属于不属于3NF。如果关系模式R不属于3NF,试将R分解成3NF模式 将将R分解成:分解成:R1(商店编号商店编号,商品编号商品编号,商品库存商品库存量量,部门编号部门编号)R2(商店编号商店编号,部门编号部门编号,负责人负责人)18第六章关系数据理论第六章关系数据理论 复习复习现有关系模式如下:Teacher(tno,tname,tel,department,bno,bname,borrowdate,rdate,backup),其中:tno教师编号 tname教师姓名tel电话 department所在部门bno借阅图书编号 bname书名borrowdate借书日期rdate还书日期 backup备注该模式的属性间具备通常的语义,例如,教师编号决定教师姓名,即教师编号是唯一的。借阅图书编号决定书名,即借阅图书编号是唯一的,等等。1、教师编号是候选码吗?教师编号教师编号tno不是候选码。因为教师不是候选码。因为教师编号编号-书名书名(tno-bname)不成立。不成立。2、写出该关系模式的主码。该关系模式的主码该关系模式的主码(bno,tno,borrowdate).3、该关系模式中是否存在部分函数依赖?如存在,写出其中两个。存在部分函数依赖存在部分函数依赖,如如(tno-department),(bno-bname)4、如何将一个1NF转化为若干个2NF。找出非主属性对码的部分依赖,将该找出非主属性对码的部分依赖,将该关系模式分解为两个或两个以上的关系模式分解为两个或两个以上的关系模式,使得分解后的关系模式关系模式,使得分解后的关系模式中均消除了非主属性对码的部分依中均消除了非主属性对码的部分依赖。赖。19第六章关系数据理论第六章关系数据理论 复习复习现有关系模式如下:Teacher(tno,tname,tel,department,bno,bname,borrowdate,rdate,backup),其中:tno教师编号 tname教师姓名tel电话 department所在部门bno借阅图书编号 bname书名borrowdate借书日期rdate还书日期 backup备注该模式的属性间具备通常的语义,例如,教师编号决定教师姓名,即教师编号是唯一的。借阅图书编号决定书名,即借阅图书编号是唯一的,等等。5、将该关系模式分解为3NF.BK(bno,bname),F1=bno-bnameTH(tno,tname,tel,department),F2=tno-tname,tno-tel,tno-department,TBB(tno,bno,borrowdate,rdate,backup)F3=(tno,bno,borrowdate)-rdate,(tno,bno,borrowdate)-backup20第六章关系数据理论第六章关系数据理论 复习复习1、试说明由关系模式中全部属性所组成的集合作为候选码、试说明由关系模式中全部属性所组成的集合作为候选码的关系即是的关系即是3NF,也是也是BCNF。因为关系模式的候选码由全部属性所组成,所以该关系中没有非主属性。因此满足关系R属于3NF的条件:每个非主属性既不部分依赖于码,也不传递依赖于码。又因为它没有非主属性,关系模式的候选码是U,关系模式中的决定因素也是U,满足关系属于BCNF的条件。2、任何、任何2目关系属于目关系属于3NF?正确。因为关系模式中只有两个属性,所以无传递依赖。3、任何、任何2目关系属于目关系属于4NF?正确。因为只有两个属性,所以无非平凡的多值依赖。21第六章关系数据理论第六章关系数据理论 复习复习例题例题:已知关系模式已知关系模式R,U=A,B,C,D,E,F=AB C,B D,C E,EC B,AC B 求求(AB)F+(1)X(0)=AB,i=0(2)求tmp,tmp=CD(3)X(1)=tmpX(0)=ABCD(4)因为X(1)X(0),所以再找出左部为ABCD子集的那些函数依赖(5)tmp=CDEB(6)X(2)=tmpX(1)=ABCDE(AB)F+=ABCDE22第六章关系数据理论第六章关系数据理论 复习复习如果函数依赖集F满足下列条件,则称F为一个极小的函数依赖集极小的函数依赖集,也称最小覆盖 (1)F中的每个函数依赖的右部为单属性 (2)F中不存在这样的函数依赖XA,使得F-XA 与F等价 (3)F中不存在这样的函数依赖XA,使得F-XA ZA与F等价(Z X)求候选关键字的经验方法:若属性A仅出现在所有函数依赖的右部,则它一定不包含在任何候选关键字中;若属性A仅出现在所有函数依赖的左部,则它一定包含在某个候选关键字中;若属性A既出现在函数依赖的右部,又出现在左部,则它可能包含在候选关键字中;在上述基础上求属性集闭包。23第六章关系数据理论第六章关系数据理论 复习复习例子:对于R(ABCDE),F=AB,BC E,EDA求出R的所有候选关键字如果如果K是关键字是关键字,则有则有K-U,所以只要判断所以只要判断KF+=U 且且KF+U(K K)CD一定包含在候选码中 (CD)F+=CD (CDA)F+=ABCDE (CDB)F+=CDBEA (CDE)F+=CDEAB例子:对R(A,B,C,D,E,E,G),F=AC-B,BC-D,A-BE,E-CG.问AB,BC,AC是否是关系R的候选码?分别求分别求(A)F+=U,(BC)F+=BCD,所所以以BC不是候选码。候选码是不是候选码。候选码是A。24第第9章章 关系查询优化关系查询优化 查询优化的一般准则:1、应尽可能先做选择运算。2、同时进行投影运算和选择运算。3、把投影运算同其前或后的双目运算结合起来执行。4、把某些选择同其前面所要执行的笛卡尔积运算结合起来,称为连接运算。5、找出公共子表达式。6、选取合适的连接算法。15指代数优化策略。6涉及物理优化。25第第10章章 数据库恢复技术数据库恢复技术 复习复习事务的定义及特性(ACID)1、原子性2、一致性3、隔离性4、持续性数据库的恢复技术1、数据转储2、登陆日志文件DBMS执行的恢复步骤.26第第11章章 并发控制并发控制3种数据不一致的类型1、丢失修改、丢失修改2、不可重复读、不可重复读3、读脏数据、读脏数据如何用封锁协议保证数据一致性?一级、二级、三级封锁协一级、二级、三级封锁协议议什么样的并发调度是正确调度 可串行化的调度是正确的可串行化的调度是正确的调度。调度。例子 设T1,T2,T3是以下三个事务:T1:A:=A+2 T2:A:=A*2 T3:A:=A*A设A的初值为0(1)若这若这3个事务允许并发执行,则个事务允许并发执行,则有多少种可能的正确结果,请有多少种可能的正确结果,请一一列举出来。一一列举出来。A的最终结果可能有2、4、8、16.串行执行次序有T1T2T3,T1T3T2,T2T1T3,T2T3T1,T3T1T2,T3T2T1.对应的执行结果是16,8,4,2,4,2。27第第11章章 并发控制并发控制 复习复习(2)给出一个可串行化的调度,)给出一个可串行化的调度,并给出执行结果。并给出执行结果。T1 T2 T3SLock AY=A=0Unlock AXLock A SLock AA=Y+2 等待写回A(=2)等待 Unlock A 等待 Y=A=2 Unlock A XLock A T1 T2 T3 SLock A A=Y*2 等待 写回A(=4)等待 Unlock A 等待 Y=A=4 Unlock A XLock A A=Y*2 写回A(=16)Unlock A 最后结果是最后结果是16,是可串行化的调,是可串行化的调度度28第第11章章 并发控制并发控制 复习复习(3)若这三个事务都遵守两段所)若这三个事务都遵守两段所协议,试给出一个不产生死锁协议,试给出一个不产生死锁的可串行化调度。的可串行化调度。T1 T2 T3SLock A Y=A=0XLock AA=Y+2 Slock A写回A(=2)等待Unlock A 等待 Y=A=2 XLock AUnlock A 等待 SLock A A=Y*2 等待T1 T2 T3 写回A(=4)等待 Unlock A 等待 Y=A=4 Unlock A XLock A A=Y*2 写回A(=16)Unlock A Unlock A29第第11章章 并发控制并发控制 复习复习(4)若这3个事务都遵守两段所协议,试给出一个产生死锁的调度。T1 T2 T3 SLock A Y=A=0 SLock A Y=A=0 XLock A 等待 Xlock A 等待 Slock A Y=A=0 Xlock A 等待30谢谢你的阅读v知识就是财富v丰富你的人生71、既然我已经踏上这条道路,那么,任何东西都不应妨碍我沿着这条路走下去。康德72、家庭成为快乐的种子在外也不致成为障碍物但在旅行之际却是夜间的伴侣。西塞罗73、坚持意志伟大的事业需要始终不渝的精神。伏尔泰74、路漫漫其修道远,吾将上下而求索。屈原75、内外相应,言行相称。韩非
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!