数据库原理及应用(何玉洁)第二版第2章.ppt

上传人:小** 文档编号:86268478 上传时间:2019-03-17 格式:PPT 页数:65 大小:709.01KB
返回 下载 相关 举报
数据库原理及应用(何玉洁)第二版第2章.ppt_第1页
第1页 / 共65页
数据库原理及应用(何玉洁)第二版第2章.ppt_第2页
第2页 / 共65页
数据库原理及应用(何玉洁)第二版第2章.ppt_第3页
第3页 / 共65页
数据库原理及应用(何玉洁)第二版第2章.ppt_第4页
第4页 / 共65页
数据库原理及应用(何玉洁)第二版第2章.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《数据库原理及应用(何玉洁)第二版第2章.ppt》由会员分享,可在线阅读,更多相关《数据库原理及应用(何玉洁)第二版第2章.ppt(65页珍藏版)》请在金锄头文库上搜索。

1、1,第2章 数据库系统结构,2.1 数据和数据模型 2.2 概念层数据模型 2.3 组织层数据模型 2.4 数据库系统的结构,2,2.1 数据和数据模型,一、数据,数据是用物理符号把信息按一定格式记载下来的有意义符号组合。 如(张三,9912101,男,1981,计算机系, 应用软件) 数据有一定的格式。 数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。,3,数据的两个特征: 数据的静态特征 包括数据的基本结构、数据间的联系和对 数据取值范围的约束。 数据的动态特征 指对数据进行的操作及操作规则,对数据 库数据的操作主要有查询数据、更改数据(插 入、删除、修改数据)。,4,二、

2、 数据模型,模型是对事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达,是理解系统的思维工具。 数据模型(Data Model) 也是一种模型,它是对现实世界数据特征的抽象。 数据模型一般应满足三个要求: 第一:要能够比较真实地模拟现实世界; 第二:要容易被人们理解; 第三:要能够很方便地在计算机上实现。,5,根据模型应用的不同目的,可将这些模型分为两大类,它们分别属于两个不同的层次。 第一类是概念层模型 另一类是组织层数据模型,6,概念层模型,从数据的应用语义视角来抽取模型并按用户的观点来对数据和信息进行建模。 这类模型主要用在数据库的设计阶段 它与具体的数据库管理系统无关。,7,组织

3、层数据模型,从计算机系统的观点出发对数据进行建模 指用什么样的结构来组织数据 主要用于DBMS的实现 主要包括: 层次模型(用树型结构组织数据) 网状模型(用图型结构组织数据) 关系模型(用简单二维表结构组织数据) 对象关系模型(用复杂表格及其他结构组织数据),8,为了把现实世界中的具体事物抽象、组织为某一具体DBMS支持的数据模型,通常首先将现实世界抽象为信息世界,然后再将信息世界转换为机器世界。即:首先把现实世界中的客观对象抽象为某一种信息结构,然后再把概念级模型转换为计算机上的DBMS支持的数据模型,也就是组织层数据模型。,9,2.2 概念层数据模型,一、基本概念,实际上是现实世界到机器

4、世界的一个中间层次。 概念层模型:是指抽象现实系统中有应用价值的元素及其关联关系,反映现实系统中有应用价值的信息结构,并且不依赖于数据的组织结构。 概念数据模型是面向用户、面向现实世界的数据模型,它与具体的DBMS无关。 常用的概念模型有实体-联系(Entity-Relationship,简称E-R)模型、语义对象模型。,10,二、实体-联系模型,1、实体 实体是具有公共性质的可相互区别的现实世界对象的集合。 实体可以是具体的,也可以是抽象的概念或联系。如学生、课程,学生的选课、订货等。 在E-R图中用矩形框表示具体的实体,把实体名写在框内。 实体中的每个具体的记录值(一行数据),称之为实体的

5、一个实例。比如学生实体中的每个具体的学生。,11,2、属性 属性就是描述实体或者联系的性质或特征的数据项。属于一个实体的所有实体实例都具有共同的性质,在E-R模型中,这些性质或特征就是属性。 属性在E-R图中用圆角矩形表示,在矩形框内写上属性的名字,并用连线将属性矩形框与它所描述的实体联系起来。,12,3、联系 实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体之间的联系。 联系是数据之间的关联集合,是客观存在的应用语义链。联系用菱形框表示,框内写上联系名,并用连线将联系框与它所关联的实体连接起来。,13,实体型之间的联系分为三类:,一对一联系:如果实体A中的每个

6、实例在实体B中至多有一个(也可以没有)实例与之关联,反之亦然,则称实体A与实体B具有一对一联系,记作:1 : 1。 例如,部门和经理(假设一个部门只有一个经理)、系和正系主任(假设一个系只有一个正主任)都是一对一联系。如图(a)所示。,经理,部门,管理,1,1,(a),14,一对多联系:如果实体A中的每个实例在实体B中有n个实例(n0)与之联系,而实体B中每个实例在实体A中只有一个实例与之联系,则称实体A与实体B是一对多联系,记作:1 : n。 例,假设一个部门有若干职工,而一个职工只在一个部门工作,则部门和职工之间就是一对多联系。如图(b)所示。,职工,部门,工作,n,1,(b),15,多对

7、多联系:如果对于实体A中的每个实例,实体B中有n个实例(n0)与之联系,而实体B中的每个实例,在实体A中也有m个实例(m0)与之联系,则称实体A与实体B的联系是多对多的,记为m : n 。 例如学生和课程,一个学生可以选修多门课程,一门课程也可以被多个学生选修,因此学生和课程之间是多对多的联系。如图(c)所示。,n,16,n,(c),17,E-R图不仅能描述两个实体之间的联系,而且还能描述两个以上实体之间的联系。比如有顾客、商品、售货员三个实体,并且有语义:每个顾客可以从多个售货员那里购买商品,并且可以购买多种商品;每个售货员可以向多名顾客销售商品,并且可以销售多种商品;每种商品可由多个售货员

8、销售,并且可以销售给多名顾客。描述三者之间的关联关系的E-R图如下图所示,这里联系被命名为“销售”。,售货员,顾客,商品,销售,m,n,p,18,2.3 组织层数据模型,组织层数据模型是从数据的组织方式的角度来描述信息。目前,在数据库领域中最常用的组织层数据模型有四种,它们是:层次模型、网状模型、关系模型和面向对象模型。 组织层数据模型是按存储数据的逻辑结构来命名的。,19,层次模型 层次模型用树形结构来表示实体及其之间的联系,如行政机构、家族关系等。特点: 1)有一个结点没有父亲结点,称为根结点。 2)其它结点有且仅有一个父亲结点。 每个结点表示一个记录类型,记录类型之间的联系用结点间的连线

9、(有向边)表示,这种实体之间的联系是1:M联系(包括1:1联系)。,20,教员-学生数据库模型,系,教研室,学生,教员,21,教员学生层次数据库的一个值,22,层次模型存储结构 邻接法、链接法 层次模型优点: 层次清晰、构造简单、易于实现1:1和1:N 的实体联系。 层次模型有两个缺点: 只能表示1:N联系,虽然系统有多种辅助手段实现M:N联系但较复杂,用户不易掌握 由于层次顺序的严格和复杂,引起数据的查询和更新操作很复杂,因此应用程序的编写也比较复杂。,23,网状模型 是用以实体型为结点的有向图来表示各实体及其之间的联系。特点: 1) 可以有一个以上的结点无父亲。 2) 至少有一个结点有多于

10、一个的父亲。 能表示 M:N 联系。 缺点:编写应用程序复杂,模型结构复杂。,24,25,学生/选课/课程的网状数据模型,26,一、关系模型的数据结构,关系数据模型源于数学,它用二维表来组织数据,而这个二维表在关系数据库中就称为关系。关系数据库就是表或者说是关系的集合。关系系统要求只让用户所感觉的数据库就是一张张表。在关系系统中,表是逻辑结构而不是物理结构。,27,1、关系 关系就是二维表,它满足如下两个条件: 关系表中的每一列都是不可再分的基本属性。 表中各属性不能重名。 表中的行、列次序并不重要。 2、元组 表中的每一行数据称作是一个元组 3、属性 表中的每一列是一个属性值集,列可以命名,

11、称为属性名 4、主码(主键或主关键字) 是表中的属性或属性组,用于惟一地确定一个元组 5、域 属性的取值范围就称为域,28,二、 关系模型的数据操作,关系模型的操作对象是集合,而不是行。也就是操作的数据以及操作的结果都是完整的表(是包含行集的表,而不只是单行)。因此,集合处理能力是关系系统区别于其他系统的一个重要特征。 关系数据模型的数据操作主要包括四种:查询、插入、删除和修改数据。,29,关系代数,关系代数的运算按运算符的不同主要分为两类: 传统的集合运算:运算是从关系行的角度进行的。包括并、差、交和乘积(笛卡尔积)等运算。 专门的关系运算:不仅涉及行运算,也涉及列运算,这种运算是为数据库的

12、应用而引进的特殊运算。包括选取、投影、连接和求商等运算。,30,(1)合并(Union)运算 运算符: 运算表达式: R1R2,将关系R2中与关系R1中不相同的元组插入到关系R1中,(2)求差(Difference)运算 运算符: 运算表达式: R1R2,将关系R1中与关系R2中相同的元组删除,关系R1和R2具有相同的n个属性,相应的属性取自同一个域,31,R S R S R-S,32,(3)乘积(Cartesian Product)运算 严格地讲应该是广义的笛卡尔积 R: n目关系,k1个元组 S: m目关系,k2个元组 RS 列:(n+m)列元组的集合 元组的前n列是关系R的一个元组 后m

13、列是关系S的一个元组 行:k1k2个元组 RS = tr ts |tr R tsS ,33,RS,34,(4)选择(Selection)运算 运算符: 运算表达式: F(R) 从关系R中选出满足条件表达式F的那些元组构成的关系,R B=b1(R),35,(5)投影(Projection)运算 运算符: 运算表达式:A1 , A2 , , An(R) 从R中选择出若干属性列(A1 , A2 , , An)组成新的关系,R A,C(R),36,(6)连接 从两个关系的笛卡尔积中选取属性间满足一定 条件的元组 记作: R S A和B:分别为R和S上度数相等且可比的属性组 :比较运算符 连接运算从R和

14、S的广义笛卡尔积RS中选取 (R关系)在A属性组上的值与(S关系)在B 属性组上值满足比较关系的元组,37,两个重要的连接: 等值连接 为“=”,是从关系R和S的广义笛卡尔积中选取A,B属性值相等的那些元祖。 自然连接 是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。,38,R S 等值连接(R.B=S.B) 自然连接,39,等值连接与自然连接的区别: 等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行自然连接。 等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然

15、连接是去掉重复列的等值连接。,40,(7)商操作 运算符: 运算表达式:RS R和S是两个关系,Z是R的属性集合,X是S的属性集合,X是Z的子集,Y=Z-X。R除以S的商为: RS=Y(R)-Y(Y(R) S)-R),41,关系R,关系S,RS,42,关系演算的表达能力与关系代数等价,它 是以数理逻辑中的谓词演算为基础的。 根据关系演算中变量的不同,可将关系演 算分为: 基于元组变量的关系演算 (简称元组关系演算) 基于域变量的关系演算 (简称域关系演算),关系演算,43,三、关系模型的数据完整性约束,数据完整性是指数据库中存储的数据是有意义的或正确的。数据完整性约束主要包括三大类: 实体完整

16、性 参照完整性 用户定义的完整性,44,1、实体完整性 指关系数据库中的所有表都必须有主码,而且表中不允许存在如下的记录: 无主码值的记录 主码值相同的记录 关系模型中使用主码作为记录的惟一标识,主码所包含的属性称为关系的主属性,其他的非主码属性称为非主属性。在关系数据库中主属性不能取空值。关系数据库中的空值是特殊的标量常数,它代表未定义的(不适用的)或者有意义但目前还处于未知状态的值。,45,2、参照完整性 参照完整性有时也称为引用完整性。 参照完整性是描述实体之间的联系的。参照完整性一般是指多个实体或表之间的关联关系。限制一个表中某列的取值受另一个表的某列的取值范围约束的特点就称为参照完整性。在关系数据库中用外码(Foreign key,有时也

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号