第2章 数据模型与数据库系统的结构

上传人:飞*** 文档编号:8033177 上传时间:2017-08-10 格式:PPT 页数:77 大小:1.99MB
返回 下载 相关 举报
第2章 数据模型与数据库系统的结构_第1页
第1页 / 共77页
第2章 数据模型与数据库系统的结构_第2页
第2页 / 共77页
第2章 数据模型与数据库系统的结构_第3页
第3页 / 共77页
第2章 数据模型与数据库系统的结构_第4页
第4页 / 共77页
第2章 数据模型与数据库系统的结构_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《第2章 数据模型与数据库系统的结构》由会员分享,可在线阅读,更多相关《第2章 数据模型与数据库系统的结构(77页珍藏版)》请在金锄头文库上搜索。

1、1,第2章 数据模型与数据库系统结构,2.1 数据和数据模型2.2 概念层数据模型 2.3 组织层数据模型 2.4 数据库系统的结构2.5 数据库管理系统,2,2.1数据和数据模型,数据与信息数据对现实事物及其属性的表示数据是数据库中存储的基本对象从数据中获得有意义的内容称为信息如(9512110,张明,男,18,金融系)数据模型是对现实事物及其联系的模拟和抽象。如:学生(学号,姓名,性别,年龄,所在系) 修课(学号,课程号,成绩) “学生”和“课程”通过“学号”属性联系在一起。,3,为了更好地把现实世界中的事物抽象到数据库中的数据,通常先将现实世界事物及其联系抽象为信息世界中的概念模型,然后

2、再将概念模型转换为机器世界的数据模型表示。首先把现实世界中的客观对象抽象为某一种信息结构,这种信息结构并不依赖于具体的计算机系统,而且也不与具体的DBMS相关,而是概念级的模型,也就是概念(层数据)模型,如:E-R模型;然后再把概念级模型转换为计算机上的DBMS支持的某一种数据结构,也就是(组织层)数据模型,如:关系模型。,4,2.1 事物从现实到机器的抽象过程(续),数据模型(关系、网状、层次),概念模型(ER),认识抽象,信息世界,机器世界,现实世界中客观对象的抽象过程,现实世界,现实世界,机器世界,概念模型,认识抽象,数据模型,关系模式,转换,E-R图,信息世界,现实世界中客观对象的抽象

3、过程,6,2.2 概念层数据模型,概念层数据模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的工具,也是数据库设计人员和用户之间进行交流的工具,因此,该模型一方面应该具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识;另一方面它还应该简单、清晰和易于被用户理解。 实体-联系(Entity-Relationship,简称E-R)模型是常用的概念模型表示工具。,7,2.2 概念模型(续),1.信息世界中的基本概念(1)实体(Entity) 客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。如:学生、课程、职工等,实体,客观

4、存在并可相互区别的事物,学生实体,教师实体,课程实体,9,(2) 属性(Attribute) 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。如:学号、年龄、性别等,属性,是用来刻画实体的某一特性,学生,教师,课程,姓名属性,性别属性,年龄属性,学号属性,职称属性,编号属性,姓名属性,课号属性,课名属性,学分属性,11,2.2 概念模型 (续),(3) 码(Key) 唯一标识实体的属性集称为码。(如:学号)(4) 域(Domain) 属性的取值范围称为该属性的域。(如:成绩0.100) (5) 实体型(Entity Type) 用实体名及其属性名集合来抽象和刻画的同类实体学生(学

5、号,姓名,年龄)(6) 实体集(Entity Set) 同一类型实体的集合称为实体集(如:所有学生数据),12,2.2 概念模型(续),(7) 联系(Relationship) 现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系 如:开工日期与完工日期实体之间的联系通常是指不同实体集之间的联系 如:学生与课程联系又分为一对一联系(1:1)、一对多联系(1:n)、 多对多联系(m:n)三种类型。,13,一对一联系(1:1) 定义 如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反

6、之亦然,则称实体集A与实体集B具有一对一联系,记为1:1实例如果一个系只有一个系主任,一个系主任只在一个系任职,则系与系主任的联系是一对一联系。,2.2 概念模型(续),一对一联系,物理系数学系计算机系化学系,杨明华邓立新徐光正李盛德,系,系主任,一对一联系,15,一对多联系(1:n)定义 如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n实例如果一个系中有多个专业,而一个专业只能属于一个系,则系与专业的联系是一对多联系。,2.2 概念模型(续),一对多联系,

7、物理系数学系计算机系化学系,应用物理理论物理应用数学基础数学计算机应用计算机通讯应用化学高分子材料,系,专业,一对多联系,17,2.2 概念模型(续),多对多联系(m:n)定义: 如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n实例若一个学生可以同时选修多门课程,一门课程同时有若干个学生选修,则学生与课程之间的联系是多对多联系。,多对多联系,李 明王小丽,操作系统软件工程数据结构离散数学程序设计数据库原理银行会计金融统计,学生,课程,多对多联系,19,概

8、念模型的表示工具E-R图,实体型用矩形表示,矩形框内写明实体名。属性用椭圆形表示,并用无向边将其与相应的实体连接起来,学生,教师,学生,学号,年龄,性别,姓名,20,2.2 概念模型(续),联系联系本身 用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n),21,2.2 概念模型(续),22,联系的属性:联系本身也是一种实体型,也 可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来,2.2 概念模型(续),23,两个以上实体型之间一对多联系实例 课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,使

9、用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用,2.2 概念模型(续),24,2.2 概念模型(续),两个以上实体型间的多对多联系实例 (1)供应商、项目、零件三个实体型(2)一个供应商可以供给多个项目多种零件(3)每个项目可以使用多个供应商供应的零件(4)每种零件可由不同供应商供给,两个以上实体型间m:n联系,25,2.2 概念模型(续),单个实体型内部一对多联系实例 职工实体型内部具有领导与被领导的联系某一职工(干部)“领导”若干名职工一个职工仅被另外一个职工直接领导一对一联系 请举例,26,单个实体型内的联系,单个实体型内多对多联系 请举例,27,物资管理系统概念

10、模型设计实例,用E-R图表示某个工厂物资管理系统的概念模型实体仓库: 仓库号、面积、电话号码零件 :零件号、名称、规格、单价、描述供应商:供应商号、姓名、地址、电话号码、帐号项目:项目号、预算、开工日期职工:职工号、姓名、年龄、职称,28,物资管理实体联系,实体之间的联系如下: (1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓库和职工之间是一对多的联系。(3)职工实体型中具有一对多的联系,职工之间具有领导-被领导关系。即仓库主任领导若干保管员。

11、(4)供应商、项目和零件三者之间具有多对多的联系,供应量表示供应商为项目提供的零件数量。,29,物资管理概念模型的E-R图,30,概念数据模型设计工具PowerDesigner(自学),31,作业,根据以下说明画出电子商务网站概念模型的E-R图电子商务网站中的实体包括:客户,商品,商品类别,商品退货,商城信息。各实体包含的数据项分别如下:客户:注册号,密码,地址,注册日期,邮编,电话,性别,姓名,积分。商品:商品编号,商品名称,商品生产日期,商品保质期,商品单价,商品折扣。商品类别:商品类别编号,商品类别名。优惠政策:客户等级,优惠率,积分要求。商城信息:信息编号,信息标题,信息内容。,32,

12、实体间的联系:一个商品可以属于一种商品类别,一种商品类别的商品可以包含多个商品;一个客户可以购买多种商品,一种商品可以被多个客户多次购买;客户购买商品产生订单,订单联系属性包括:订单号,购买数量,订单金额,订货日期,配送日期,发票号码,订单状态(1未处理;2已备货;3已发货;4已完成;5已退货)。对已退货订单,要说明退货理由。一个客户可以暂存多种商品在购物篮中,一种商品可以被多个客户暂存在购物篮中;购物篮属性包括:是否购买。每个客户可以对所有商品做出评价,评价联系属性包括:评价编号,评价标题,评价内容,评价时间,评价分数。,33,2.3 (组织层)数据模型,概念模型只是将现实世界的客观对象抽象

13、为某种信息结构,这种信息结构并不依赖于具体的计算机系统,而对应于机器世界的模型则由数据模型描述。数据模型是通过数据结构对信息结构的具体实现。常见的数据模型类型:层次模型、网状模型、关系模型。数据模型的三要素是数据结构、数据操作和数据完整性约束。,34,2.3.1 层次数据模型,采用层次模型作为数据的组织方式。典型代表是IBM公司的IMS(Information Management System)数据库管理系统。层次模型用树形结构表示实体和实体之间的联系。构成层次模型的树由结点和连线组成,结点表示实体,连线表示相连的两个实体间的联系,这种联系是一对多的。通常把表示“一”的实体放在上方,称为父结

14、点;把表示“多”的实体放在下方,称为子结点。,35,2.3.1 层次数据模型,层次模型的两点限制有且仅有一个结点无父结点,这个结点即为树的根;其他结点有且仅有一个父结点。,36,2.3.1 层次数据模型,37,2.3.1 层次数据模型,教员学生层次数据库模型,层次结构示意图1,系,教研室,学生,教员,根结点,叶结点,叶结点,系的子女结点教员的双亲结点,38,2.3.1 层次数据模型,层次结构示意图2,教员学生层次数据库模型,39,2.3.1 层次数据模型,教员学生层次数据库的一个值,40,2.3.1 层次数据模型,多对多联系在层次模型中的表示用层次模型间接表示多对多联系将多对多联系分解成一对多

15、联系,41,2.3.1 层次数据模型,42,层次数据模型的存储结构邻接法:按照层次树前序遍历的顺序把所有记录值依次邻接存放,即通过物理空间的位置相邻来实现层次顺序.,2.3.1 层次数据模型,43,2.3.1 层次数据模型,链接法: 用指引来反映数据之间的层次联系子女兄弟链接法层次序列链接法,44,2.3.1 层次数据模型,子女-兄弟链接法每个记录设两类指针,分别指向最左边的子女(每个记录型对应一个)和最近的兄弟,45,2.3.1 层次数据模型,层次序列链接法按树的前序穿越顺序链接各记录值,46,2.3.2 网状数据模型,用图形结构表示实体和实体之间的联系的数据模型就称为网状数据模型。 去掉了层次模型中的两点限制。可以直接表示多对多的联系。 同样使用父结点和子结点这样的术语,并且同样一般把父结点放置在子结点的上方。 典型代表是CODASYL系统,它是CODASYL组织的标准建议的具体实现。,47,2.3.2 网状数据模型,满足下面两个条件的基本层次联系的集合:允许一个以上的结点无双亲;一个结点可以有多于一个的双亲。,48,2.3.2 网状数据模型,

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

当前位置:首页 > 高等教育 > 其它相关文档

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