1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,数据模型,数据管理技术经历,:,人工管理,文件系统,数据库系统,高级数据库阶段,2,访问,数据,1,程序,1,应用程序与数据之间的对应关系,3,应用程序,1,文件,1,.,.,.,文件,2,应用程序,2,.,.,.,应用程序,n,文件,n,文件,系统,应用程序与数据之间的对应关系,4,DBMS,应用程序,1,应用程序,2,数据库,应用程序与数据的对应关系,(,数据库系统,),5,数据库三级模式结构和二级功能映射,6,物理独立性,?,逻辑独立性,?,考考你,2.1,数据模型概述,2.2 E-R,模型,2.3,层次数据模型,2.4,网状数据模型,2.5,关系数据模型,2.6,数据模型与数据模式,2.1,数据模型概述,在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲,数据模型就是现实世界的模拟,。,数据模型应满足三方面要求:,能比较真实地模拟现实世界,容易为人所理解,便于在计算机上实现,数据模型是数据库系统的核心和基础。,2.1,数据模型概述,在数据库中用数据模型这个工具来抽
2、象、表示和处理现实世界中的数据和信息。通俗地讲,数据模型就是现实世界的模拟,。,数据模型应满足三方面要求:,能比较真实地模拟现实世界,容易为人所理解,便于在计算机上实现,数据模型是数据库系统的核心和基础。,2.1,数据模型概述,数据模型分成两个不同的层次:,(1),概念模型,也称信息模型,它是按,用户,的观点来对数据和信息建模。主要用于数据库设计。,(2),数据模型(逻辑模型和物理模型,)它是按,计算机系统,的观点对数据建模。主要用于,DBMS,的实现。主要包括网状模型、层次模型、关系模型等,2.1,数据模型概述,客观对象的抽象过程,两步抽象:,第一步:现实世界中的客观对象抽象为概念模型;,第二步:把概念模型转换为某一,DBMS,支持的数据模型。,现实世界,机器世界,信息世界,需求分析,概念结构设计,逻辑和物理结构设计,2.1.1,数据模型的定义,一般地讲,数据模型是严格定义的一组概念的集合,这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件。,数据结构,数据操作,数据的约束条件,1.,数据结构,什么是数据结构,数据库的组成对象以及对象之间联系的描述,两类对象,与数据类型、内
3、容、性质有关的对象,与数据之间联系有关的对象,数据结构是对系统静态特性的描述,2.,数据操作,数据操作,对数据库中各种对象(型)的实例(值)允许执行的,操作,及有关的,操作规则,数据操作的类型,检索,更新(包括插入、删除、修改),数据操作是对系统动态特性的描述。,3.,数据的约束条件,数据的约束条件,一组完整性规则的集合。,完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。,如:年龄必须大于零,关系必须满足实体完整性和参照完整性等。,2.1.2,概念模型中的一些基本概念,1.,实体(,Entity,),客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。,2.,属性(,Attribute,),实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画,3.,关键字(,Key,),实体概念的关键之处在于一个实体能够与别的实体相互区别,因此每个实体都有本身的关键字(也称为标志符或关键码)。实体的关键字是惟一能标志实体的属性的集合。,4.,域(,Domain,),属性的取值范围称
4、为该属性的域。,5.,实体型(,Entity Type,),用实体名及其属性名集合来抽象和刻画的某一类实体称为实体型。,6.,实体集(,Entity Set,),同型实体的集合称为实体集。,举例说明实体型和实体集的区别,可以用什么属性区分开学生实体?,概念模型的主要概念,(,续,),(7),联系,(,Relationship,),现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。,实体内部的联系:组成实体的各属性之间的联系,实体之间的联系:不同实体集之间的联系,三类实体型间联系,一对一联系(,1:1,),一对多联系(,1:n,),多对多联系(,m:n,),1.,实体型之间的联系,一对一联系,如果对于实体集,A,中的每一个实体,实体集,B,中至多有一个实体与之联系,反之亦然,则称实体集,A,与实体集,B,具有一对一联系。记为,1:1,。,实例,班级与班长之间的联系:一个班级只有一个正班长,而一个班长只在一个班中任职,两个实体型间的联系,(,续,),一对多联系,如果对于实体集,A,中的每一个实体,实体集,B,中有,n,个实体(,n0,)与之联系,反之,对
5、于实体集,B,中的每一个实体,实体集,A,中至多只有一个实体与之联系,则称实体集,A,与实体,B,有一对多联系。记为,1:n,实例,班级与学生之间的联系:一个班级中有若干名学生,而每个学生只在一个班级中学习,两个实体型间的联系,(,续,),多对多联系(,m:n,),如果对于实体集,A,中的每一个实体,实体集,B,中有,n,个实体(,n0,)与之联系,反之,对于实体集,B,中的每一个实体,实体集,A,中也有,m,个实体(,m0,)与之联系,则称实体集,A,与实体,B,具有多对多联系。记为,m:n,实例,课程与学生之间的联系:一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,2,多个实体型间的联系,多个实体型之间的联系,一对一联系,一对多联系,多对多联系,多个实体型间的联系,(,续,),多个实体型间的一对多联系,实例,对于课程、教师与参考书三个实体型,如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师只讲授一门课程,每一本参考书只供一门课程使用,则课程与教师、参考书之间的联系是一对多的,课程,讲授,教师,1,m,多个实体型间的,1:n,联系,参考书,n,多个实体型
6、间的联系,(,续,),多个实体型间的一对一联系,多个实体型间的多对多联系,3.,同一实体集内各实体间的联系,一对多联系,实例,职工实体集内部具有领导与被领导的联系,即某一职工(干部)“领导”若干名职工,而一个职工仅被另外一个职工直接领导,因此这是一对多的联系,一对一联系,多对多联系,职工,领导,1,n,同一实体型内部的,1:n,联系,2.2 E-R,模型,概念模型的表示方法很多,实体联系方法,(,E-R,方法,),是最为常用的概念模型表示方法。,用,E-R,图来描述现实世界的概念模型。,E-R,方法也称为,E-R,模型。,E,R,模型用,E-R,图来抽象表示现实世界的数据特征,是一种表达能力强、易于掌握的,概念数据模型,。,E-R,图,实体型,用矩形表示,矩形框内写明实体名。,学生,教师,E-R,图,(,续,),属性,用椭圆形表示,并用无向边将其与相应的实体连接起来,学生,学号,年龄,性别,姓名,E-R,图,(,续,),联系,联系本身,:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(,1:1,、,1:n,或,m:n,),联系的表示方法,
7、实体型,1,联系名,实体型,2,1,1,1:1,联系,实体型,1,联系名,实体型,2,m,n,m:n,联系,实体型,1,联系名,实体型,2,1,n,1:n,联系,联系的表示方法,(,续,),实体型,1,联系名,m,n,同一实体型内部的,m:n,联系,实体型,1,联系名,实体型,2,1,m,多个实体型间的,1:n,联系,实体型,3,n,联系的表示方法示例,班级,班级,-,班长,班长,1,1,1:1,联系,课程,选修,学生,m,n,m:n,联系,班级,组成,学生,1,n,1:n,联系,联系的表示方法示例,(,续,),职工,领导,1,n,同一实体型内部的,1:n,联系,课程,讲授,教师,1,m,多个实体型间的,1:n,联系,参考书,n,E-R,图,(,续,),联系,联系的属性,:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来。,联系属性的表示方法,课程,选修,学生,m,n,成绩,一个设计,E-R,模型的具体例子,【,例,2-1】,库存业务的管理模式语义如下:,在一个仓库可以存放多种器件,一种器件也可以存放在多个仓库中。,一个仓库有多个职工,
8、而一个职工只能在一个仓库工作。,一个职工可以保管一个仓库中的多种器件,由于一种器件可以存放在多个仓库中,当然可以由多名职工保管。,库存业务,E-R,图如下,:,2.3,层次数据模型,层次模型,:用树形结构来表示各类实体以及实体间的联系的数据模型。,满足下面,两个条件,的基本层次联系的集合为层次模型:,1.,有且只有一个结点没有双亲结点,这个结点称为根结点,2.,根以外的其它结点有且只有一个双亲结点,层次模型中的几个术语,根结点,双亲结点,兄弟结点,叶结点,层次数据模型的数据结构,(,续),1,根结点,2,兄弟结点,3,叶结点,4,兄弟结点,5,叶结点,叶结点,2.3,层次数据模型,表达事物之间的逻辑层次关系,数据项是简单数据类型,1:n,自然,直观,容易理解,性能好,但不能充分表达现实世界,不便于表示,m:n,关系,在转换成多个,1,:,n,会出现大量数据冗余。为此引入指针和虚拟记录(用,v,标记引用某个记录),用户了解数据的物理结构,并在数据操纵命令中显式地给出存取途径。,数据独立性较差。,层次数据库示例,某大学,计算机学院,工商管理学院,经贸学院,计算机系,网络中心,管理系,99,
9、级,2000,级,学生甲,学生乙,2.4,网状数据模型,用网络结构来表示实体之间联系的数据模型,反映着现实世界中实体间更为复杂的联系,数据项不一定是简单的数据类型,允许,结点之间的多种联系,,可表达更复杂结构,m:n,更好地描述现实世界,良好的性能,存取效率高,但结构复杂,增加了用户查询和定位的困难,不易掌握。,网状数据库示例,某大学,学生甲,选修课程,1,学生乙,选修课程,2,选修课程,3,选修课程,4,2.5,关系数据模型,关系模型是用二维表格结构来表示实体及实体之间的联系的模型,1970,年美国,IBM,公司,San Jose,研究室的研究员,E.F.Codd,首次提出了数据库系统的关系模型,计算机厂商新推出的数据库管理系统几乎都支持关系模型,关系数据模型,关系数据模型是应用最广泛的一种数据模型。,优点:,(,1,)能够以简单、灵活的方式表达现实世界中各种实体及其相互间关系,使用与维护也很方便。,(,2,)具有严密的数学基础和操作代数基础,如关系代数、关系演算等,可将关系分开,或将两个关系合并,使数据的操纵具有高度的灵活性。,(,3,)在关系数据模型中,数据间的关系具有对称性,因此,关系之间的寻找在正反两个方向上难度是一样的,而在其他模型如层次模型中从根结点出发寻找叶子的过程容易解决,相反的过程则很困难。,关系数据模型,关系数据模型是应用最广泛的一种数据模型。,缺点,:,(,1,)实现效率不够高,(,2,)描述对象语义的能力较弱。,(,3,)不直接支持层次结构,因此不直接支持对于概括、分类和聚合的模拟,即不适合于管理复杂对象的要求,它不允许嵌套元组和嵌套关系存在。,(,4,)模型的可扩充性较差。,(,5,)模拟和操纵复杂对象的能力较弱。,2.6,数据模型与数据模式,数据模型与数据模式:数据模型是描述数据的手段,而数据模式是用给定数据模型对具体数据的描述。,数据模式与数据实例,小结,数据模型是对现实世界进行抽象的工具。,数据模型三要素:数据结构、数据操作和数据约束。,数据模型分成概念模型和结构模型两大类。前者的代表是实体联系模型,后者的代表是层次、网状、关系和面向对象模型。,关系模型是当今的主流模型。,面向对象模型是今后发展的方向。,
《数据库PPT:数据模型》由会员第***分享,可在线阅读,更多相关《数据库PPT:数据模型》请在金锄头文库上搜索。