数据库技术基础.ppt_第1页
数据库技术基础.ppt_第2页
数据库技术基础.ppt_第3页
数据库技术基础.ppt_第4页
数据库技术基础.ppt_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

1、第7章 数据库技术知识 7.1.1 数据库管理系统的功能和特性 7.1.2 数据库模型及结构(考点1) 7.1.3 关系模型(考点2) 7.1.4 关系代数(考点3) 7.1.5 关系数据库SQL(考点4) 7.1.6 关系数据库规范化理论(考点5) 7.1.7 数据库的保护 7.1.8 数据库和分布式数据库基础知识,7.1.1 数据库管理系统的功能和特性 ()DBS(DataBase System ),数据库系统,是由数据库、硬件、软件(DBMS)和数据库管理员(DBA)组成,其中管理的对象是数据。 DBA的主要职责是:模式定义、存储结构和存取方法的定义、模式和物理组织的修改、对数据库访问的

2、授权、完整性约束的说明等。,()DBMS(DataBase Management System),数据库管理系统,是DBS中对数据进行管理的软件系统,它是DBS的核心成份。,DBMS的主要功能:数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立与维护等。 DBMS的特征:数据结构化且统一管理、数据与程序独立、具有较强的数据控制功能等。 DBMS的数据控制功能:数据库的安全性保护、数据的完整性、并发控制、故障恢复等。,7.1.2 数据库模型及结构 考点1:数据库的三级模式、二级映像 数据体系结构分成三个级别,分别是内部级、概念级和外部级。 这三个结构之间往往差别很大,为实现这三个抽象级别

3、的转换,DBMS在这三级之间提供了两层映像:外模式/概念模式映像和概念模式/内模式映像。,数据库的三级模式: ()概念模式是数据库中全部数据的整体逻辑结构描述; 概念级是涉及所有用户的数据定义,也就是全局的数据视图,称为“概念模型”。 ()外模式是用户与数据库系统的接口,是用户用到的那部分数据的描述; 外部级最接近用户,是用户能看到的数据特性,用户的数据视图称为“外模型”。,()内模式是数据库在物理存储方面的描述,包括定义所有的内部数据类型、索引、文件的组织方式,以及数据控制方面的细节。 内部级是最接近于物理存储设备,涉及实际数据的存储方式,物理存储的数据视图称为“内模型”。,数据库的两级映像

4、: ()概念模式/内模式映像存在于概念级和内部级之间,用于定义概念模式和内模式间的对应性; ()外模式/概念模式映像存在于外部级和概念级之间。,考点2:数据独立性 如果数据库的内模式要作修改,即数据库的存储设备和存储方式有所变化,那么概念模式/内模式映像也要作相应的修改,但概念模式很可能仍然保持不变,即达到了物理数据独立性。, 如果数据库的整体逻辑结构(即概念模式)要作修改,那么外模式/概念模式映像也要作相应的修改,但外模式很可能仍然保持不变,即达到了逻辑数据独立性。,例(软设2008年上半年上午试题51-52):从数据库管理系统的角度看,数据库系统一般采用如下图所示的三级模式结构。图中处应填

5、写 (51) ,处应填写 (52) 。 51.A外模式/概念模式 B概念模式/内模式 C外模式/概念模式映像 D概念模式/内模式映像 52.A外模式/概念模式 B概念模式/内模式 C外模式/概念模式映像 D概念模式/内模式映像,7.1.3 关系模型 常考点1:关系模型涉及的主要术语 常考点2:关系模型的三类完整性规则 常考点3: E-R模型向关系模型的转换,(1)关系模型的基本概念 关系模型是目前最流行的数据模型,它用二维表格结构表示实体集。,关系模型涉及的主要术语(关系、元组、属性、关系模式、键(主键、外键)(常考点),学生信息表,关系模式就是记录的类型,它包括模式名、属性名、值域以及模式的

6、主键。关系模式只是对数据本身特性的描述。 例如: 在学生关系模式S(S#,SNAME , SEX,AGE ,DEPT),键也称为关键码,分为超键、候选键、主键和外键。 主键(主码):在一个关系中,如果存在某个属性或属性组合能够唯一标识该关系的元组,且是能惟一标识元组的最小属性集,则这个属性或属性组合称为该关系的候选关键字。 外键(外码):关系模式R中属性或属性组X并非R的键,但X是另一个关系模式的键,则称X是R的外键。 注意:在不加说明的情况下,关系模式的键是指主键。,指出如下两个关系模式的主键,如有外键也请指出. (1)学生关系模式S(S#,SNAME,AGE,SEX) (2)学生成绩关系模

7、式SC(S#,C# ,GRADE),(3)关系模型的三类完整性规则(常考点) 实体完整性规则 实体完整性规则是指主关键字值不能是空值;,引用完整性规则 引用完整性规则是指不允许引用不存在的实体(即元组); 引用完整性规则可以描述为:如果关系模式R2的外关键字X与关系模式R1的主关键字相符,则外关键字的每个值必须在关系模式R1中主关键字的值中找到,或者为空值。引用完整性规则的详细解释见例题7-12。,p402例题7-12:假设有如图7-5所示的两个关系模式,试说明其引用完整性规则。,图7-5 成绩与课程关系模式,用户定义的完整性规则 用户定义的完整性规则针对某一具体数据的约束条件,由应用环境决定

8、。,(4) E-R模型向关系模型的转换(常考点3) E-R图中基本符号介绍: 矩形表示实体,矩形框内写实体名。 椭圆表示属性,椭圆内写属性名。 菱形表示实体之间的联系,菱形框内写联系名。,ER图中联系的类型: 一对一、一对多、多对多,ER模型的主要成分是实体类型和联系类型。 一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的标识符就是关系模式的键。,将一个联系转换为关系模式,这里要分为三种情况: 当联系是11时,可在任一模式内加入另一个模式的键和联系类型的属性; 当联系是1M时,则在M端的关系模式中加入1端实体类型的键和联系类型的属性; 联系是MN时,则联系类型也转换为关系模式,其属

9、性为两端实体类型的键以及联系类型的属性。 ER模型的建立方法详见例题7-11。,p104【例题7-11】 用ER图描述图书信息管理的数据模型,并将ER模型转换为关系模型。,例(软设2008年下半年上午试题51-54):某学校学生、教师和课程实体对应的关系模式如下:学生(学号,姓名,性别,年龄,家庭住址,电话) 课程(课程号,课程名) 教师(职工号,姓名,年龄,家庭住址,电话) 如果一个学生可以选修多门课程,一门课程可以有多个学生选修;一个教师只能讲授一门课程,但一门课程可以有多个教师讲授。,由于学生和课程之间是一个 (51) 的联系,所以 (52) 。又由于教师和课程之间是一个 (53) 的联

10、系,所以 (54) 。,51.A1对1 B1对多 C多对1 D多对多 52.A不需要增加一个新的关系模式 B不需要增加一个新的关系模式,只需要将1端的码插入多端 C需要增加一个新的选课关系模式,该模式的主键应该为课程号 D需要增加一个新的选课关系模式,该模式的主键应该为课程号和学号,53. A 1对1 B1对多 C多对1 D多对多 54.A不需要增加一个新的关系模式,只需要将职工号插入课程关系模式 B不需要增加一个新的关系模式,只需要将课程号插入教师关系模式 C需要增加一个新的选课关系模式,该模式的主键应该为课程号 D需要增加一个新的选课关系模式,该模式的主键应该为课程号和教师号,例(2008

11、年上半年上午试题53-54):设有职工EMP(职工号,姓名,性别,部门号,职务,进单位时间,电话),职务JOB (职务,月薪)和部门DEPT(部门号,部门名称,部门电话,负责人)实体集。一个职务可以由多个职工担任,但一个职工只能担任一个职务,并属于一个部门,部门负责人是一个职工。下图所示的a、b处的实体名分别为 (53) ;图中a、b之间为 (54) 联系。,DEPT,a,b,1 *,53. ADEPT、EMP BEMP 、DEPT CJOB、EMP DEMP、JOB 54.A1 1 B1 * C* 1 D* *,例(200年下半年上午试题):.若某个关系的主码为全码,则该主码应包含 (52)

12、 。 A单个属性 B两个属性 C多个属性 D 全部属性,7.1.4 关系代数(常考点:关系的运算) 关系代数是以集合代数为基础发展起来的,以关系为运算对象的一组高级运算的集合。把关系看成是集合,集合代数中的运算可以引入到关系中来。,(2)关系代数的五种基本运算 并:记为RS。由属于R或属于S的元组组成,要求R和S具有相同的关系模式。 差:记为R-S。由属于R但不属于S的元组组成,要求R和S具有相同的关系模式。,R,S,笛卡尔积 记为RS。设关系R和S的元数分别是r和s,则RS的元数为(r+s),它的每个元组的前r个分量来自R的一个元组,后s个分量来自S的一个元组。若R有m个元组,S有n个元组,

13、则RS有mn个元组。, 投影:记为i1,i2,im(R)。对关系R进行垂直分割,并重新安排列的顺序,再删除重复的元组。显然,投影后元组的个数可能会减少。 选择:记为F(R)。根据给定的条件对关系R作水平分割,选择符合条件的元组,元数不变。,(3)关系代数的四种组合操作 交:记为RS,由既属于R又属于S的元组组成,要求R和S具有相同的关系模式。, 联接:记为 。在R和S的笛卡尔积中挑选第i个分量和第(r+j)个分量满足运算的元组(r是R的元数)。它是笛卡尔积和选择两种运算的组合。, 自然联接:记为 。它是联接的一个特例,由笛卡尔积、选择和投影三种运算组合而成,选择笛卡尔积中在两个关系公共属性上的

14、值相等的那些元组,然后保留一列公共属性。,总结:根据自然联接的定义,可以得出自然联接运算的运算步骤。 计算笛卡尔积RS。 挑选R和S在公共属性上值相等的那些元组。 去掉重复的属性,即公共属性只保留一列。,R,S,例:设关系和分别为图(a)和图(b)所示,则的结果为 ,则的结果为 ,则的结果为 。,【例题7-13】 如图7-6所示是关系R和关系S,求R和S的自然联接。,图7-6 关系R和关系S, 除法:记为RS。假设关系R和S的元数分别是r和s(rs0),且S的属性与R的后s个属性相同,则RS是关系R在前rs个属性上投影的一个子集,该子集与S的笛卡尔积必须包含在R中。 除法运算的实例详见例题7-

15、14。,【例题7-14】 如图7-8所示是关系R和关系S,求R和S的除法运算结果。,图7-8 关系R和关系S,例:计算,例(2008年下半年上午试题55-56):关系R、S如下图所示,关系代数表达式1,5,6(25 (RS) (55) ,该表达式与 (56) 等价。,R,S,A,B,C,D,55.,56.AA,B,C (BB(RS) BR.A,R.B,R.C (R.BS.B (RS) CR.A,S.B,S.C (R.BS.B(RS) DR.A,S.B,S.C (R.BS.C(RS),7.1.5 关系数据库SQL(常考点:SQL) SQL的数据查询语句:包括select语句的句型、各子句的格式和

16、使用规定、基本表的联接操作等。select语句由六个子句组成,完整的句法如下。 select 目标表的列名或表达式序列 from 基本表或(和)视图序列 where 条件表达式 group by 列名序列 having 组合表达式 order by 列名序 其中前两个子句是必不可少的。,当where子句、group by子句和having子句同时出现在一个查询中时,执行的顺序 如下。 执行where子句,从表中选取行。 执行group by子句,对选取的行进行分组。 执行聚合函数。 执行having子句,选取满足条件的分组。,SQL的数据更新语句包括插入、删除和修改三个语句。 插入语句: in

17、sert into R(列名1,列名2,) values(表达式1,表达式2,) 功能:在表R中添加新记录,按列名的顺序,输入指定字段的数据值。如省略列名列表,则按照表结构中定义的顺序依次指定每个字段中的值。, 删除语句: delete from R where F 功能:从表R中删除满足条件F的元组。, 修改语句: update R set 列名=值表达式,列名=值表达式 where F 功能:修改表R中满足条件F的元组的属性值,修改的值在set语句中给出。如果省略where子句,则该列中的每一行均用同一个值进行更新。,例(2007年上半年上午试题53-54):给定供应关系SPJ(供应商号,

18、零件号,工程号,数量),查询某工程至少用了3家供应商(包含3家)供应的零件的平均数量,并按工程号的降序排列。 SELECT 工程号, (53) FROM SPJ GROUP BY 工程号 (54) ORDER BY 工程号 DESC; 53.AAVG(数量) At 平均数量 BAVG(数量) AS 平均数量 C平均数量 At AVG(数量) D平均数量 AS AVG(数量),54. AHAVING COUNT (DISTINCT(供应商号)2 BWhere COUNT(供应商号)2 CHAVING (DISTINCT (供应商号)2 DWhere 供应商号 2,7.1.6 关系数据库规范化理论

19、(常考点:范式) 1.函数依赖 定义:设(U)是一个关系模式,是的属性集合,和是的子集对于(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在上的属性值不同,则称“函数决定于”或“函数依赖于”,记作。,2.完全函数依赖和部分函数依赖 定义:在关系模式R(U)中,如果XY,并且对于的任何一个真子集x,都有不能推出,则称完全函数依赖于,记作 若XY,但不完全函数依赖于,则称部分函数依赖于,记作,f,p,3.传递函数依赖 定义:在关系模式R(U)中,如果XY,YZ,且Y不包含在X中,Z不包含在Y中,Y不能推出X,则称传递函数依赖于。 范式:衡量关系模式的优劣的标准就是模

20、式的范式(NF)。范式有多种,与数据依赖有着直接的联系。, 第一范式(1NF) 如果一个关系模式R的所有属性是不可分的基本数据项,则R属于1NF。 但是满足第一范式的关系模式不一定是一个好的关系模式。例如:关系模式 SLC(Sno,Sdept,Sloc,Cno,Grade) 学号 系 系地址 课程号 成绩 1NF存在的问题: (1)存在非主属性部分函数依赖于码。 (2)数据冗余和更新异常(插入异常、删除异常、修改异常)问题,第二范式(2NF) 如果关系模式R是1NF,且每个非主属性完全函数依赖于R的候选键,那么称R是2NF模式。 但是满足第二范式的关系模式也不一定是一个好的关系模式。 2NF存

21、在的问题: (1)存在非主属性传递函数依赖于码。 (2)数据冗余和更新异常问题,由于关系模式SLC中存在非主属性对码的部分函数依赖,把它分解成两个关系模式 SC(Sno,Cno,Grade) SL(Sno,Sdept,Sloc) 但是在SL这个关系模式中,存在下列函数依赖: SnoSdept; SdeptSloc; SnoSloc;, 第三范式(3NF):如果关系模式R是1NF,且每个非主属性都非传递依赖于R的候选键,那么称R是第三范式。第三范式的模式必定是2NF的模式,而且排除了非主属性对键的传递依赖,因此具有较好的性能。 SL分解成两个关系模式: SD(Sno,Sdept) DL(Sdep

22、t,Sloc) 在分解后的关系模式中既不存在非主属性对码的部分函数依赖,也不存在非主属性对码的传递函数依赖。, BC范式(BCNF):如果关系模式R是1NF,且每个属性都不传递依赖于R的候选键,那么称R是BCNF模式。BCNF模式排除了任何属性对键的传递依赖。 上述四种范式之间有如下联系:BCNF3NF2NF1NF。 范式实例详见例题7-15。,【例题7-15】 设有如图7-10所示的关系R。判断R是第几范式。它是否存在插入、删除异常?若存在,说明在什么情况下发生?发生的原因是什么?将它分解为高一级的范式,分解后能否解决操作异常问题?,图7-10 关系R,例(软设2007年上半年上午试题55-

23、56):设关系模式R(A,B,C),传递依赖指的是 (55) ;下列结论错误的是 (56) 。 55.A若AB,BC,则AC B若AB,AC, 则ABC C若AC,则ABC D若ABC,则AB,AC 56.A若ABC,则AB,AC B若AB,AC,则ABC C若AC,则ABC D若ABC,则AC,BC,例(007年下半年上午试题):建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno (Sname,Zip,City),ZipCity。“供应商”表S属于 (53) 。 A1NF B2

24、NF C3NF DBCNF,7.1.7 数据库的保护 (2)数据库的恢复:在数据库系统中,恢复的基本含义就是恢复数据库本身。也就是说,在发生某种故障使数据库当前的状态已经不再正确时,把数据库恢复到已知为正确的某一状态。 目前数据库系统中最常用的两种恢复方法是转储和登记日志文件。,数据库的故障可用事务的故障表示,分为四类: 事务本身可预料的故障 在程序中预先设置rollback语句结束事务。 事务本身不可预料的故障 这种故障是指事务没有在预定的结束点结束而引起的故障,如算术溢出、违反存储保护等。, 系统故障 引起系统停止运转、随之要求系统重新启动的事件称为系统故障。此时内存中的信息丢失,而存储在外存上的数据未受影响。 介质故障 由于某种硬件故障,如磁

温馨提示

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

评论

0/150

提交评论