数据库系统简明教程ch.ppt
An Introduction to Database System,数据库系统简明教程An Introduction to Database System第十章 概念模型与E-R方法,An Introduction to Database System,第十章 概念模式与E-R方法,10.1 概念模型10.2 概念模型的主要概念10.3 实体型之间的联系10.4 实体联系方法10.5 小结,An Introduction to Database System,10.1 概念模型,数据模型是数据库系统的核心和基础。根据数据模型应用的不同目的,可以将这些模型划分成两大类第一类模型是概念模型,它是按用户的观点对数据和信息建模,主要用于数据库设计;第二类模型是数据模型,主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模,主要用于DBMS的实现。,An Introduction to Database System,客观对象的抽象过程-两步抽象现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的数据模型。,10.1 概念模型,An Introduction to Database System,DBMS支持的数据模型,概念模型,认识抽象,信息世界,机器世界,现实世界中客观对象的抽象过程,现实世界,10.1 概念模型,An Introduction to Database System,概念模型的特点真实性:是对现实世界的抽象和概括,它必须真实地反映现实世界中事物和事物之间的联系。易理解性:是独立于机器的信息结构,应该容易被理解。易修改性:应用环境和应用需求是经常改变的,概念模型应该容易修改和扩充。易转换性:应该容易向关系、网状、层次等各种数据模型转换。,10.1 概念模型,An Introduction to Database System,第十章 概念模式与E-R方法,10.1 概念模型10.2 概念模型的主要概念10.3 实体型之间的联系10.4 实体联系方法10.5 小结,An Introduction to Database System,(1)实体(Entity)客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。(2)属性(Attribute)实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。(3)码(Key)唯一标识实体的属性集称为码。,10.2 概念模型的主要概念,An Introduction to Database System,(4)域(Domain)属性的取值范围称为该属性的域。(5)实体型(Entity Type)用实体名及其属性名集合来抽象和刻画同类实体称为实体型(6)实体集(Entity Set)同一类型实体的集合称为实体集,10.2 概念模型的主要概念,An Introduction to Database System,(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系实体之间的联系通常是指不同实体集之间的联系,10.2 概念模型的主要概念,An Introduction to Database System,第十章 概念模式与E-R方法,10.1 概念模型10.2 概念模型的主要概念10.3 实体型之间的联系10.4 实体联系方法10.5 小结,An Introduction to Database System,两个实体型之间的联系,10.3 实体型之间的联系,An Introduction to Database System,两个实体型之间的联系,一对一联系(1:1)实例一个班级只有一个正班长一个班长只在一个班中任职定义:如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1,An Introduction to Database System,一对多联系(1:n)实例一个班级中有若干名学生,每个学生只在一个班级中学习定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n,两个实体型之间的联系,An Introduction to Database System,多对多联系(m:n)实例课程与学生之间的联系:一门课程同时有若干个学生选修一个学生可以同时选修多门课程定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n,两个实体型之间的联系,An Introduction to Database System,两个以上实体型之间一对多联系若实体集E1,E2,.,En存在联系,对于实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,.,Ei-1,Ei+1,.,En之间的联系是一对多的,10.3 实体型之间的联系,An Introduction to Database System,实例 课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用,10.3 实体型之间的联系,An Introduction to Database System,多个实体型间的一对一联系两个以上实体型间的多对多联系实例 供应商、项目、零件三个实体型一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给,10.3 实体型之间的联系,An Introduction to Database System,同一个实体集内的各实体之间也可以存在联系一对多联系实例 职工实体型内部具有领导与被领导的联系某一职工(干部)“领导”若干名职工一个职工仅被另外一个职工直接领导这是一对多的联系一对一联系 请举例,10.3 实体型之间的联系,An Introduction to Database System,多对多联系请举例,10.3 实体型之间的联系,An Introduction to Database System,第十章 概念模式与E-R方法,10.1 概念模型10.2 概念模型的主要概念10.3 实体型之间的联系10.4 实体联系方法10.5 小结,An Introduction to Database System,10.4 实体联系方法,实体联系方法(E-R方法)概念模型的一种表示方法用E-R图来描述现实世界的概念模型E-R方法也称为E-R模型,An Introduction to Database System,E-R图,实体型用矩形表示,矩形框内写明实体名。属性用椭圆形表示,并用无向边将其与相应的实体连接起来,学生,教师,An Introduction to Database System,E-R图,联系联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n),An Introduction to Database System,E-R图,联系的表示方法,An Introduction to Database System,E-R图,示例,An Introduction to Database System,E-R图,联系的属性:联系本身也是一种实体型,也 可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来,An Introduction to Database System,一个实例:用E-R图表示某个工厂物资管理的概念模型实体仓库:仓库号、面积、电话号码零件:零件号、名称、规格、单价、描述供应商:供应商号、姓名、地址、电话号码、帐号项目:项目号、预算、开工日期职工:职工号、姓名、年龄、职称,10.4 实体联系方法,An Introduction to Database System,实体之间的联系如下:(1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓库和职工之间是一对多的联系。职工实体型中具有一对多的联系(3)职工之间具有领导-被领导关系。即仓库主任领导若干保管员。(4)供应商、项目和零件三者之间具有多对多的联系,10.4 实体联系方法,An Introduction to Database System,10.4 实体联系方法,An Introduction to Database System,10.4 实体联系方法,实体与属性的划分现实世界常常对实体和属性已经做了大体的自然划分。可以根据这些内容定义E-R图,然后再进行必要的调整。调整的一条原则是:现实世界中的事物能作为属性对待的,尽量作为属性对待。作为属性,不能再具有需要描述的性质,是不可分的数据项。属性不能与其它实体具有联系,联系只能是实体之间的联系。,An Introduction to Database System,10.4 实体联系方法,An Introduction to Database System,10.4 实体联系方法,An Introduction to Database System,10.4 实体联系方法,An Introduction to Database System,10.5 小结,概念模型也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。本章介绍概念模型的主要概念和最常用的一种概念模型表示方法,实体联系方法。该方法用E-R图来表示概念模型。,An Introduction to Database System,下课了。,休息一会儿。,攀登,