关系数据库

上传人:101****457 文档编号:51466273 上传时间:2018-08-14 格式:PPT 页数:40 大小:144.50KB
返回 下载 相关 举报
关系数据库_第1页
第1页 / 共40页
关系数据库_第2页
第2页 / 共40页
关系数据库_第3页
第3页 / 共40页
关系数据库_第4页
第4页 / 共40页
关系数据库_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《关系数据库》由会员分享,可在线阅读,更多相关《关系数据库(40页珍藏版)》请在金锄头文库上搜索。

1、上海师范大学 计算机系数据库原理与实践(SQL Server)陆黎明 王玉善 陈军华 编著清华大学出版社 2015.10上海师范大学 计算机系2.1.1 数据模型的定义和基本要求1、数据模型的定义 模型是现实世界特征的模拟和抽象。 数据模型是现实世界数据特征的模拟和抽象。 必须事先把具体事物及其联系转换(即数字化)成计算机能 够存储和处理的数据。转换后的数据不仅要反映数据本身的 内容,而且还要反映数据之间的联系。2、数据模型的基本要求 数据模型应满足三方面要求:一是比较真实的模拟现实世界;二是容易被人理解;三是便于在计算机上实现。 2018/8/14第2章 关系数据库2上海师范大学 计算机系2

2、.1.2 数据模型的三个层次 要把现实世界中的客观事物及其联系转换成能被计算机存储 和处理的数据,就要对现实世界进行抽象建立起相应的数据 模型。但这种抽象转换不是一步完成的,而是根据数据模型 应用的目的不同分步实现的。每一步得到的数据模型分属于 三个不同的层次,它们分别是概念模型、逻辑模型和物理模 型。 概念模型(信息模型):按用户的观点对数据和信息建模, 是现实世界的第一层抽象,是信息世界中数据特征的描述, 它概念简单、清晰,易于用户理解,且不依赖于具体的计算 机系统 逻辑模型:按计算机的观点对数据建模,是现实世界的第二 层抽象,它有严格的形式化定义,便于在计算机系统中实现 。2018/8/

3、14第2章 关系数据库3上海师范大学 计算机系2.1.2 数据模型的三个层次 物理模型是对数据最底层的抽象,描述数据在系统内部的表 示方式和存取方法,在磁盘或磁带上的存储方式和存取方法 。 数据模型是数据库系统的基础和核心。逻辑模型、物理模型现实世界转换人脑的认 识与抽象机器世界概念模型信息世界现实世界 概念模型 数据库设计人员完成概念模型 逻辑模型 数据库设计人员完成逻辑模型 物理模型 由DBMS完成2018/8/14第2章 关系数据库4上海师范大学 计算机系2.1.3 数据模型的三个组成要素 一般来说,数据模型是严格定义的一组概念的集合,这些概 念精确地描述了系统的静态特性、动态特性和完整

4、性约束条 件,因此,数据模型通常是由数据结构、数据操作和完整性 约束条件这三个要素组成的。 数据结构:数据模型中最重要的方面,是数据对象及它们之 间关系的描述,反映了系统的静态特性。 数据操作:对数据对象允许操作的集合,有检索和更新两大 类,反映了系统的动态特性。 完整性约束条件:完整性规则的集合,给出模型中的数据及 其联系所具有的制约和依存规则,限制数据的状态及状态的 变化,确保数据的正确、有效、相容。2018/8/14第2章 关系数据库5上海师范大学 计算机系2.2.1 信息世界中的基本概念 概念模型也称信息模型,是按用户的观点对数据和信息建模 ,是对现实世界的第一层抽象,是信息世界中数据

5、特征的描 述。它一方面具有较强的语义表达能力,能够方便、直接地 表达应用所涉及到的现实世界中的各种语义知识,另一方面 它概念简单、清晰,易于用户理解,且不依赖于具体的计算 机系统。 概念模型主要用于数据库设计,是用户与数据库设计人员之 间进行交流的桥梁。 (1) 实体(Entity)是现实世界中客观存在并可相互区分的事 物的抽象。它可以是具体的,也可以是抽象的。例如学生、书、专业、课程、选课、借书等。 (2) 属性(Attribute)是实体某一方面特性的抽象。一个实体 可以由多个属性来刻画。例如,书实体可以由书号、书名、 作者、价格、出版社、出版日期等属性组成。2018/8/14第2章 关系

6、数据库6上海师范大学 计算机系2.2.1 信息世界中的基本概念 (3) 码(Key)是唯一标识实体的属性或属性集。例如:书号 。 (4) 域(Domain)是一组具有相同数据类型的值的集合,属性 的取值范围来自某个域。 (5) 实体型(Entity Type),同类实体必须具有相同的特征, 即相同的属性。描述同类实体的方法是实体型,它由实体名 和属性名集合组成。例如:实体“书”的实体型可表示为:书(书号,书名,作者,价格,出版社,出版日期)。 (6) 实体集(Entity Set)是同型实体的集合。 2018/8/14第2章 关系数据库7上海师范大学 计算机系2.2.2 实体间的联系 在现实世

7、界中,事物内部以及事物之间是有联系的,这些联 系在信息世界中反映为实体内部的联系和实体之间的联系。 (1) 一对一联系 有两个实体集A和B。如果任一个实体集中的每个实体最多 与另一个实体集中的一个实体有联系,则称实体集A和实体 集B具有一对一联系,记为1:1。 例如,学校里的学院与院长(如图2.2(a)所示)、班级与班 长之间都具有一对一联系。 注意,一对一联系不同于数学中的一一对应关系。某班级的 班长可以是空缺的,还没有选出班长。 2018/8/14第2章 关系数据库8上海师范大学 计算机系2.2.2 实体间的联系(2) 一对多联系 有两个实体集A和B。如果实体集A中的每个实体可与实体 集B

8、中的多个(可0个)实体有联系;反之,实体集B中的每个 实体最多可与实体集A中的一个实体有联系,则称实体集A 和实体集B具有一对多联系,记为1:n。 例如,学校里的学院与专业、专业与学生(如图2.2(b)所示 )之间都具有一对多联系。2018/8/14第2章 关系数据库9上海师范大学 计算机系2.2.2 实体间的联系(3) 多对多联系 有两个实体集A和B。如果任一个实体集中的每个实体可与 另一个实体集中的多个(可0个)实体有联系,则称实体集A和 实体集B具有多对多联系,记为m:n。 例如,学校里的学生与课程(如图2.2(c)所示)、商店里的 营业员与顾客之间都具有多对多联系。 要特别说明的是:上

9、面仅仅列出了实体集之间最常见的联系 ,事实上,两个实体集之间可以存在一种以上的联系;两个 以上的实体集之间可以存在联系;同一个实体集内的各个实 体之间也可以存在联系。2018/8/14第2章 关系数据库10上海师范大学 计算机系2.2.3 概念模型的表示方法E-R图 表示概念模型的方法很多,其中最常用的方法是1976年由 P.P.S.Chen提出的实体联系方法(E-R方法)。E-R方法用E -R图来表示概念模型,这种概念模型也称E-R模型。 E-R图中的基本图素有: (1) 矩形框:表示实体型,框中写实体名。 (2) 菱形框:表示实体之间的联系,框中写联系名。 (3) 椭圆形框:表示实体的属性

10、或联系的属性,框中写属性名 。 (4) 直线:连接与此联系相关的实体、连接实体与属性、连接 联系与属性。 2018/8/14第2章 关系数据库11上海师范大学 计算机系2.2.3 概念模型的表示方法E-R图 画E-R图的步骤: (1) 确定实体 (2) 确定各实体的属性 (3) 确定实体之间的联系 (4) 确定各联系的属性 成绩任教日期课程专业学生教师属 于授 课选 修nmmnn1选修日 期评价学分学时课程名课程号课程课程类型2018/8/14第2章 关系数据库12上海师范大学 计算机系2.3.1 层次模型 逻辑模型有:层次、网状、关系、面向对象、对象关系 等 在层次模型中表示实体以及实体之间

11、联系的数据结构是有向 树结构。树中所有父子结点之间的联系都为一对多的联系。 层次模型的特点是实体之间的联系通过指针来实现。 优点是查询效率比关系模型高,且不低于网状模型,其数据 结构比较简单、直观、容易理解。 缺点是表示多对多的联系不方便(必须通过辅助手段),查 找时必须通过双亲结点,使操作趋于过程化,编写应用程序 比较复杂。 学院专业学生信息 计算机 通信 电子 张 王 徐 朱 赵 钱 孙 李 陈 杨 2018/8/14第2章 关系数据库13上海师范大学 计算机系2.3.2 网状模型 在网状模型中表示实体以及实体之间联系的数据结构是有向 图结构。有向图中结点之间的联系都是一对多的联系,因此

12、实体之间一个多对多的联系必须通过转换用实体之间两个一 对多的联系来表示。 网状模型中实体之间的联系也是通过指针来实现的,因此查 询效率较高。另外,由于它的数据结构是图结构,所以多对 多的联系也较容易实现。网状模型的缺点是数据结构复杂, 编程也复杂。 S2 C1S2 C2S1 C2S1 C1S2S1C2C1学生选修课程2018/8/14第2章 关系数据库14上海师范大学 计算机系2.3.3 关系模型 关系模型是建立在严格的数学概念基础上的,数据结构是一 张二维表,实体以及实体之间的联系都用二维表表示。二维 表在关系模型中称为关系(Relation),对关系的描述称为 关系模式(Relation

13、Schema)。 例如:学生(学号,姓名,性别,年龄,家庭地址,联系电话)课程(课程号,课程名,课程类型,学时,学分)选修(学号,课程号,选修日期,成绩) 关系模型的优点是:有严格的理论基础,概念单一;数 据结构简单、清晰、用户易理解;存取路径对用户透明, 程序与数据的独立性高,易于应用程序的编写和维护。 关系模型的缺点主要是查询效率不如非关系模型,DBMS的 开发难度高。 2018/8/14第2章 关系数据库15上海师范大学 计算机系2.4 关系模型 开创者或奠基人:IBM公司的研究员E.F.Codd 1970年的著名论文:“A Relational Model of Data for Sh

14、ared Data Banks” 1981年的实验系统:IBM公司的System R、加州大学柏克 利分校的 INGRES 目前的商品化系统: DB2, PostgreSQL, Oracle, SQL- Server, MySQL, Sybase, Informix等 关系数据库系统是支持关系模型的数据库系统 关系模型:关系数据结构、关系操作集合、关系完整性约束2018/8/14第2章 关系数据库16上海师范大学 计算机系2.4.1 关系数据结构 在关系模型中,现实世界中实体以及实体之间的各种联系均 用单一的结构类型,即关系来表示。下面从集合论角度给出 关系数据结构的形式化定义。 1、域(Do

15、main)是一组具有相同数据类型的值的集合。域中 所包含的值的个数称为域的基数,常用字母m表示。例如, 有下列集合:D1=张敏,孙阳,李丽,表示姓名的集合,其基数m1=3 ;D2=男,女,表示性别的集合,其基数m2=2;D3=计算机,通信,表示专业的集合,其基数m3=2。 2、笛卡尔积(Cartesian Product)是域上的一种集合运算, 这些域可以完全不同,也可以部分或全部相同。定义为:D1D2Dn = (d1, d2, , dn) | diDi ,i=1, 2, , n 2018/8/14第2章 关系数据库17上海师范大学 计算机系2.4.1 关系数据结构(1) 元组(Tuple) : (d1, d2, , dn) (2) 分量 : di n (3) 笛卡尔积基数M :M = mii=1例如,对于前面给出的姓名,性别,专业三个域,其笛卡 尔积的基数为322=12,如表2.1所示。 3、关系(Relation):D1D2Dn 的任一有意义的子集称 为域D1,D2,Dn上的关系,表示为:R(D1,D2,Dn) 其中: R为关系名、n为关系的度(或目)、Di为域关系是值域笛卡尔积的一个有限子集,关系中的每个元素 就是元组,通常用t

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

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