数据库电子教案(全)完整版课件整套教学课件_第1页
数据库电子教案(全)完整版课件整套教学课件_第2页
数据库电子教案(全)完整版课件整套教学课件_第3页
数据库电子教案(全)完整版课件整套教学课件_第4页
数据库电子教案(全)完整版课件整套教学课件_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

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

文档简介

1、第1章 数据库概述1.1 数据库发展阶段1.2 数据库系统的组成与类型1.3 数据库系统的模式结构1.4 数据模型1.5 关系型数据模型21.3 数据库系统的模式结构1. 模式的基本概念2. 数据库的三级模式数据库中的数据是按一定的结构组织起来的,这种结构在数据库中就是数据模型,它是描述数据的一种形式。模式是用给定的数据模型对具体数据的描述(就像用某一种编程语言编写具体应用程序一样)模式是数据库中全体数据的逻辑结构和特征的描述34应用程序1应用程序2外模式1应用程序3外模式2应用程序4应用程序5外模式3数据库概念模式内模式内模式/模式映像外模式/模式映像1外模式/模式映像3外模式/模式映像2

2、数据库的三级模式结构:数据库系统由外模式、(概念)模式和内模式组成5(1)外模式外模式又称子模式或用户模式,它是模式的子集,是用户看到的数据视图。 一个数据库可以有多个外模式DBMS提供子模式语言(Subschema Data Description Language)来严格定义子模式6外模式外模式的地位:介于模式与应用之间模式与外模式的关系:一对多外模式通常是模式的子集一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同外模式的用途保证数据库安全性的一个有力措施。每个用户只能看见和访问所对

3、应的外模式中的数据7(2)模式模式又称逻辑模式或概念模式,它是数据库中全体数据的全局逻辑结构和特征的描述,也是所有用户的公共数据视图。 一个数据库只有一个模式。DBMS提供模式描述语言(DDL)来严格定义模式8模式模式的地位:是数据库系统模式结构的中间层与数据的物理存储细节和硬件环境无关与具体的应用程序、开发工具及高级程序设计语言无关模式的定义数据的逻辑结构(数据项的名字、类型、取值范围等)数据之间的联系数据有关的安全性、完整性要求9(3)内模式内模式又称存储模式,是数据在数据库中的内部表示,即数据的物理结构和存储方式的描述。记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引

4、的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定一个数据库只有一个内模式。DBMS提供内模式描述语言(Internal Schema DDL)来严格定义内模式。10112. 数据库的二级映像功能(1)外模式模式映像外模式模式映像定义了该外模式与模式之间的对应关系当模式改变时(如:增加新的数据类型、新的数据项,新的关系),由 DBA 对各个外模式模式映像作相应的改变,可以使外模式保持不变,从而应用程序可以不必修改,保证了数据与程序的逻辑独立性。12数据库的二级映像功能(2)模式内模式映像模式内模式映像是唯一的,它定义了数据库的全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改

5、变时,由 DBA 对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必修改。保证了数据与程序的物理独立性。数据独立性数据独立性包含两个方面逻辑独立性物理独立性物理独立性是指当数据的存储结构发生变化时,比如,从链表存储改为哈希表存储,不影响应用程序的特性;逻辑独立性是指当表达现实世界的信息内容发生变化时,比如增加一些列、删除无用列等,也不影响应用程序的特性。 14DB的三级模式结构是一个理想的结构,使DB达到了高度的数据独立性,但是增加了系统的开销,首先,要在系统中保存三级结构、两级映象的内容,并进行管理;其次,用户与DB的数据传输要在三级结构中来回转换,增加了时间开销。基于上述

6、原因,目前现有的DBMS商品软件中,三级结构的划分常常是不清晰的,不同系统的数据独立性是不同的。15数据库三级模式结构是数据管理的结构框架,依照这种框架组织的数据是数据库的具体内容。数据库的二级映像功能保证了数据库外模式的稳定性,从底层保证了应用程序的稳定性进行数据库设计时,应该首先确定数据库的模式,即全局逻辑结构。内模式依赖于它的全局逻辑结构,独立于外模式,设计时应考虑到实现较好的时间与空间效率。外模式是面向具体应用程序的,设计时应充分考虑应用需求,注意应用的可扩充性。161.4 数据模型1.4.1 数据模型的概念和类型 一、模型一张地图,一个汽车模型,一个精致的航模飞机以及一组建筑设计沙盘

7、都是具体的模型。所以,对于模型,一眼望去,就会使人联想到真实生活中的事物。模型是对现实世界的模拟和抽象。数据模型是现实世界中数据特征的抽象。数据模型应满足三方面要求能比较真实地模拟现实世界容易为人所理解便于在计算机上实现数据模型组成要素数据结构数据操作完整性约束条件二、数据模型数据模型数据模型的定义:数据库中的数据是按一定的方式存储在一起的,其组织结构又称为数据模型,它决定了数据库中数据之间联系的表达方式。数据模型的分类:一种是独立于计算机系统,是现实世界的抽象,也是用户和数据库设计人员交流的工具,即“概念数据模型”;另一种则是直接涉及到计算机系统和数据管理系统的数据模型,称为“基本数据模型(

8、组织模型)”(逻辑模型和物理模型).现实世界中客观对象的抽象过程DBMS支持的数据模型概念模型认识抽象信息世界机器世界现实世界1、概念数据模型完全不涉及信息在计算机系统的表示。目前描述概念模型最常用的方法是实体联系(Entity-Relationship)方法,即ER方法,使用的工具称为ER图。ER图所描述的现实世界的信息结构称为实体联系模型( ER模型)。直接面向数据库的逻辑结构,例如层次、网状、关系等模型。有严格的形式化定义,以便于在计算机系统中实现。有严格定义的语法和语义的数据库语言,人们可以用这些语言来定义操纵数据库中的数据。数据数据数据数据数据数据数据数据数据数据数据数据数据证号姓名

9、专业 名性 别借书 数10001王娟计算机1110002李宏计算机0210003朱小波计算机0120002吴涛英语03层次模型网状模型关系模型2、基本数据模型基本数据模型非关系模型层次模型(Hierarchical Model)网状模型(Network Model)关系模型(Relational Model) 面向对象模型(Object Oriented Model)对象关系模型(Object Relational Model)数据管理技术进入数据库阶段的标志是60年代末的三件大事:1968年美国IBM公司推出层次模型的IMS系统;1969年美国CODASYL组织发布了DBTG报告,总结了当时

10、各式各样的数据库,提出网状模型;1970年美国IBM公司的E.F.Codd连续发表论文,提出关系模型,奠定了关系数据库的理论基础。1.4.2 概念数据模型一、基本概念概念层次模型实际上是现实世界到机器世界的一个中间层次。 概念层次模型:抽象现实系统中有应用价值的元素及其关联,反映现实系统中有应用价值的信息结构,不依赖于数据的组织结构。 概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象。是数据库设计人员和用户之间进行交流的工具 。是面向用户、面向现实世界的数据模型,是与DBMS无关 。常用的概念模型:实体-联系模型、语义对象模型 二、实体-联系模型用E-R图来描述现实世界的概念模型E

11、-R方法也称为E-R模型实体-联系模型 实体 属性 联系 实体具有公共性质的可相互区分的现实世界对象的集合。可以是具体的事物,也可以是抽象的概念或联系具体的事物:学生、课程、职工抽象的联系:学生选课实体的表示方式在E-R图中用矩形框表示实体,把实体名写在框内,比如学生实体可以表示为:学生属性实体所具有的特征或性质。身高年龄性别体重联系 联系是数据之间的关联集合,是客观存在的应用语义链 。实体内部的联系:一个实体内属性之间的联系。职工实体内部的职工号和职工的部门经理号实体之间的联系:不同实体之间的联系。课程实体和学生实体之间的选课联系。联系的表示方式 实体之间的联系用菱形框表示,框内写上联系名,

12、并用连线与有关的实体相连。联系名实体1实体21)ER图包括了实体、属性和联系3种基本图素。实体用矩形框表示,属性用椭圆形框表示,联系用菱形框表示,实体与属性与联系之间用无向直线连接。实体属性联系2)三个基本图素介绍实体通常是客观存在并且可以互相区分的事物。可以是实际的事务,如一名学生、一本书等;也可以是抽象的事件,如一场比赛、一个创意等。属性是描述对象的某个特性。如:关于学生的学号、姓名、性别、出生日期、籍贯等属性来描述;关于竞赛实体可用竞赛名、时间、地点、竞赛者、举办方等属性来描述。联系是实体间的相互关系。他反映了客观事物间相互依存的状态。图书借阅系统中实体与实体集属性的描述 3)实体间的联

13、系实体集之间存在各种关系,通常把这些关系称为“联系”。例如一个班只能有一个正班长,反之一个正班长也只能在一个班级中任职,因此是“一对一”的关系。例如一个班级中有若干名学生,每个学生只在一个班级中学习,因此是“一对多”的关系。 例如“学生”与“图书”有“借阅”关系,由于一个学生可借多本书,而一本书可被多个学生借阅,所以,学生和图书的“借阅”关系是“多对多”的关系。 两个实体型之间的联系实体型A联系名实体型B111:1联系实体型A联系名1n1:n联系实体型A实体型B联系名mnm:n联系实体型B用图形来表示两个实体型之间的这三类联系 一对一联系(实体内部的联系) 如果实体A中的每个实例在实体B中至多

14、有一个(也可以没有)实例与之关联,反之亦然,则称实体A与实体B具有一对一联系, 记作:1 : 1。 一对一联系(1:1)(1)一对一的联系(11)A中的一个实体至多与B中的一个实体相联系,B中的一个实体也至多与A中的一个实体相联系。如厂长管理工厂、班级和正班长、学校和校长等关系。厂长姓名年龄性别工厂入厂时间管理11厂名厂龄地址一对一联系的例子部门和正经理(假设一个部门只有一个正经理,一个人只当一个部门的经理)、系和正系主任(假设一个系只有一个正主任,一个人只当一个系的主任)都是一对一联系。 管理经理部门11一对多的联系 如果实体A与实体B之间存在联系,并且对于实体A中的一个实例,实体B中有多个

15、实例与之对应;而对实体B中的任意一个实例,在实体A中都只有一个实例与之对应,则称实体A到实体B的联系是一对多的。 记作: 1 : n (2)一对多的联系(1N)A中的一个实体至多与B中的多个实体相联系,B中的一个实体也至多与A中的一个实体相联系。如例如:“班级”与“学生”这两个实体集之间的联系是一对多的联系。班级班级名称班级号人数学生班主任包括1N学号姓名性别 有部门和职工两个实体,并且有语义:一个部门可以有多名职工,但是一个职工只在一个部门工作。则部门和职工之间的联系是一对多的,我们把这种联系命名为工作。一对多联系的例子工作部门职工1n(3)多对多的联系(MN)A中的一个实体至多与B中的多个

16、实体相联系,B中的一个实体也可以与A中的多个实体相联系。如例如: “学生” 与“课程”或者“学生” 与“图书”。学生学号姓名性别课程专业选修MN课程号课程名学分两个以上的实体型之间的联系供应商供应项目mp两个以上实体型间m:n联系零件n课程讲授教师1m两个以上实体型间1:n联系参考书n两个以上的实体型内的各实体之间也可以存在一对一,一对多,多对多的联系 。关联多个实体的联系顾客购买商品:每个顾客可以从多个售货员那里购买商品,并且可以购买多种商品;每个售货员可以向多名顾客销售商品,并且可以销售多种商品;每种商品可由多个售货员销售,并且可以销售给多名顾客。 mnp顾客商品售货员销售单个实体型内的联

17、系同一个实体型内的各实体之间也可以存在一对一,一对多,多对多的联系 。职工领导1n单个实体型内部1:n联系实体型1联系名mn单个实体型内的m:n联系4)E-R图实例例题1:已知学生实体具有学号、姓名、性别、班级号与年龄属性,班级实体具有班级号、班级名、人数、教室与所属学院属性,试画出它们的E-R图,并建立其间的联系。1、建立两个实体与属性的联系2、建立实体间的联系班级班级名班级号学生教室属于1N学号姓名性别人数班级号年龄学院例题2:用E-R图表示某个工厂物资管理的概念模型实体仓库: 仓库号、面积、电话号码零件 :零件号、名称、规格、单价、描述供应商:供应商号、姓名、地址、电话号码、帐号项目:项

18、目号、预算、开工日期职工:职工号、姓名、年龄、职称 实体之间的联系如下: (1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓库和职工之间是一对多的联系。职工实体型中具有一对多的联系 (3)职工之间具有领导-被领导关系。即仓库主任领导若干保管员。(4)供应商、项目和零件三者之间具有多对多的联系1.4.3 逻辑数据模型一 层次模型层次模型是数据库系统中最早出现的数据模型。 1968年,美国IBM公司推出的IMS(Information Managem

19、ent System)系统是最典型的层次数据结构,20世纪70年代在商业上得到了广泛应用。层次模型用树形结构来表示各类实体以及实体间的联系。 满足下面两个条件的基本层次联系的集合为层次模型1. 有且只有一个结点没有双亲结点,这个结点称为根结点(根唯一)2. 根以外的其它结点有且只有一个双亲结点(双亲唯一)这就使得层次数据库系统只能处理一对多的实体关系。层次模型中的几个术语根结点,双亲结点,兄弟结点,叶结点1)层次模型的数据结构 1 根结点 2 兄弟结点 3 叶结点 4 兄弟结点 5 叶结点 叶结点图1.16 一个层次模型的示例根结点:没有双亲结点兄弟结点:同一双亲的子女结点叶结点:没有子女结点

20、层次模型的特点:结点的双亲是唯一的只能直接处理一对多的实体联系任何记录值只有按其路径查看时,才能显出它的全部意义没有一个子女记录值能够脱离双亲记录值而独立存在教员学生层次数据库模型图1.17 教员学生层次数据库模型 根结点叶结点系的子女结点教员的双亲结点图1.18 教员学生层次数据库的一个值 教员学生层次数据库模型2)层次模型的相关约束 层次模型的数据操纵查询,插入,删除,更新 层次模型的完整性约束条件 无相应的双亲结点值就不能插入子女结点值如果删除双亲结点值,则相应的子女结点值也被同时删除更新操作时,应更新所有相应记录,以保证数据的一致性3)层次模型的优缺点优点:结构简单,易于实现;查询效率

21、高。缺点:不能表示两个以上实体型之间的复杂联系和实体型之间的多对多的联系;数据操纵不方便。子结点的存取只能通过父结点来进行。插入、删除复杂,父结点的删除导致子结点的删除,丢失必要的信息。二、网状模型(network model)网状模型与层次模型的最大区别在于两个结点之间的联系可以不唯一,因此要为每个联系命名。网状数据模型的典型代表是DBTG系统,由美国数据系统研究会CODASYL下属的一个数据库任务组DBTG提出(Data Base Task Group),对网状数据库的开发和发展起了重大影响。网状模型与层次模型的区别:网状模型可以更直接地去描述现实世界层次模型实际上是网状模型的一个特例网状

22、模型允许多个结点没有双亲结点网状模型允许结点有多个双亲结点网状模型允许两个结点之间有多种联系(复合联系)网状数据模型特点:多根:允许一个以上的结点无双亲多父:一个结点可以有多于一个的双亲多联系:允许两个结点间有多种联系(复合联系)1)网状模型的相关约束网状数据模型的操纵主要包括查询、插入、删除和更新数据。插入操作允许插入尚未确定双亲结点值的子女结点值。删除操作允许只删除双亲结点值。更新操作时只需更新指定记录即可。 查询操作可以有多种方法,可根据具体情况选用。2)网状数据模型的优缺点优点更直接地描述现实世界,如一个结点可以有多个双亲具有良好的性能,存取效率较高缺点结构比较复杂,而且随着应用环境的

23、扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握DDL、DML语言复杂,用户不容易使用1.5 关系模型1970年美国IBM公司研究员E.F.Codd提出关系模型。关系模型是最重要的数据模型,其应用最为广泛,Access、Visual Foxpro、SQL Server、Oracle、Sybase等都属于关系模型数据库系统。基于关系模型的数据库称为关系数据库。在用户看来,一个关系模型的逻辑结构是一张二维表,它由行和列组成。属性元组男女男性别192221年龄D01李红S02D02王伟S03D01张军S01系号姓名学号1.5.2 关系数据模型的相关概念元组(Tuple)表中的一行即为一个元组,

24、也称为一条记录。属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名(字段名)。关系(Relation)一个关系对应通常说的一张表,元组的集合可称为关系。码(键)(Key)表中的某个属性组,它可以唯一确定元组。主码(Primary Key)关系模式中用户正在使用的码称为主码。外码(Foreign Key):如果模式R中的某属性是其他模式的主码,那么该属性集为模式R的外码。域(Domain):属性的取值范围分量:元组中的一个属性值关系模式:对关系的描述关系名(属性1,属性2,属性n)如:学生(学号,姓名,年龄,性别,系,年级) 课程(课程号,课程名,学分)主键示例学生

25、基本信息表:(学号,姓名,年龄,性别,所在系)学生修课信息表:(学号,课程号,成绩)2)关系模型的相关内容在关系模型中,实体以及实体间的联系都是用关系(二维表)来表示。即用表格结构表达实体集。用外码表达实体间的联系。关系模型是由若干个关系模式组成的集合。关系模型是型,关系是值。关系的每一个分量必须是一个不可分的数据项,即不允许表中还有表。关系中不允许出现相同的元组。关系术语一般表格的术语关系名表名关系模式表头(表格的描述)关系(一张)二维表元组记录或行属性列属性名列名属性值列值分量一条记录中的一个列值非规范关系表中有表(大表中嵌有小表)表1.2 术语对比 75直观表示-一个关系就是一个二维表(

26、1) 二维表工号姓名年龄性别工资zhang 50男200li 40 女150liu 35 男150wang 25 男100 职工登记表(2)关系的特点1)关系看成是行和列交叉组成的二维表2)表中一行称为一个元组 3)表中的列称为属性(不能再分)4)列的取值范围称为域,同列具有相同的域,不同列可具有相同的域5)表中任意两行不能相同76A B C D Ea1 b1 c1 d1 e1a2 b2 c2 d2 e2a3 b3 c3 d3 e3a4 b4 c4 d4 e4 数据库技术的术语字段、数据项记录类型记录1记录2记录3记录4字段值关系模型术语属性关系模式元组1元组2元组3元组4关系实例 属性值将上

27、述表格抽象化R关系名77关系模型的一些基本术语关系:一个关系就是一张二维表,每个关系有一个关系名。元组:表中的行称为元组,一行一个元组,元组的集合称为关系。属性:表中的每一列称为一个属性。属性有型和值。一般用大写字母A、B、C.表示单个属性,用大写字母表示属性集,用小写字母表示属性值。关系中属性的个数称为“元数”。值域:每个属性有一个取值范围,称为属性的值域。属性A的值域用DOM(A)表示。每个属性对应一个值域,不同的属性可对应同一个值域。关系模式:对关系的描述称为关系模式。它可以形式化地表示为: R(U,D,DOM,I,F)通常简记为:R(U)即关系名(属性名1,属性名2,,属性名n )784.外键(外码:foreign key):若关系R中的属性或属性组F并非该关系的关键字,但它们是另外一个关系S的关键字,则称F为关系R的外关键字。例:职工关系和部门关系分别为: 职工(职工编号,姓名,部门编号,性别,年龄,身份证号码) 部门(部门编号,部门名称,部门经理)主键主键外键79例:学生关系、专业关系如下: 学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)主键外键主键例: 学生、课程、学生选课关系 学生(学号,姓名,性别,专业号,年龄) 课程(课程号,课程名,学分)

温馨提示

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

评论

0/150

提交评论