数据概念模型及关系模型设计.ppt
《数据概念模型及关系模型设计.ppt》由会员分享,可在线阅读,更多相关《数据概念模型及关系模型设计.ppt(63页珍藏版)》请在三一办公上搜索。
1、第4章 数据概念模型及关系模型设计,【知识框架】本章知识内容为数据库应用系统开发流程中需求分析、概念模型设计和逻辑模型设计,学习内容知识框架如图4-1所示。,第4章 数据概念模型及关系模型设计,总项目:学生选课管理系统数据模型设计总项目概述:学生学籍管理系统包括班级、学生、课程、教师等实体,含有学生选课管理子模块、学生档案管理子模块、学生成绩管理子模块、课程管理子模块、教师授课管理子模块、教师档案管理子模块等,其中学生选课子模块中包含“学生”和“课程”两个实体,在“学生”和“课程”之间,学生通过“选课”与“课程”发生联系,因此把“选修”确定为联系类型,并且“学生”和“课程”之间是m:n联系。,
2、任务1 概念模型设计,1.1任务情境 为“学生选课管理系统”设计一个ER模型12.任务实现(1)首先确定实体,本题有两个实体类型:学生s,课程c。(2)确定联系。实体s与实体c之间有联系,且为m:n联系(多对多联系),命名为sc。(3)确定实体和联系的属性。实体学生s的属性有:学号sno,班级class,姓名sname,性别ssex,出生日期birthday,地址address,电话tel,邮箱email,其中实体标识符为sno(实体的主码);实体课程c的属性有:课程编号cno,课程名称cname,学分credit,其中实体标识符为cno(实体的主码);联系选课sc的属性是某学生选修某课程的成
3、绩score。利用E-R方法画出“学生选课管理系统”ER图,如图4-2所示。,4,图4-2“学生选课管理系统”ER图,任务1 概念模型设计,5,数据库设计的任务是针对特定的应用需求和环境,创建一个性能良好的数据库模式,建立数据库,并基于数据库开发及其应用软件系统,使系统能有效地收集、存贮和管理数据,并对数据进行处理和加工。一、数据库设计概述数据库设计步骤分为6个阶段:,4.1 数据库设计的要求和步骤,1.需求分析阶段进行数据库设计首先必须准确地了解与分析用户需求(包括数据和处理),需求分析是整个设计过程的基础,是最困难、最耗时间的一步。需求分析做得不好,甚至会导致整个数据库设计返工重做。,6,
4、2.概念结构设计阶段概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型(实体模型也叫概念模型)。4.逻辑结构设计阶段逻辑结构设计是将概念模型转换为某个DBMS所支持的数据模型(关系模型),并对其进行优化。4.数据库物理设计阶段数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存贮结构和存贮方法)。,4.1 数据库设计的要求和步骤,7,5.数据库实施阶段运用DBMS提供的数据语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。6.数据库运行和维护阶段数据库应用系统经过试运行之后
5、,即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整和修改。设计一个完善的数据库应用系统是不可能一蹴而就的,它往往是上述6个阶段的不断反复的过程。,4.1 数据库设计的要求和步骤,8,4.2 概念模型与数据模型,现实世界是存在于人脑之外的客观世界,如何使用数据来解释和认识现实世界,则需要相应手段进行描述。模型是对现实世界的模拟和抽象。船模、航模等都是对现实世界事物的一种模拟。数据模型也是一种模型,它是对现实世界问题的数据特征的描述。,一、三个世界,9,1.现实世界泛指存在于人们头脑之外的客观世界,其中存在着各种事物,事物间又具有不同的联系。为了用数据库系统来解决现实世界中的问
6、题,就必须先深入实际,把要解决的问题调查清楚,分析与问题有关的事物及其联系。关键词:事物联系2.信息世界是现实世界在人们头脑中的反映。客观事物在观念世界中称为实体,反映事物联系的是实体模型(概念模型)。关键词:实体联系概念模型4.数据世界信息世界中的信息经数字化处理形成计算机能够处理的数据,就进入了数据世界。现实世界中的实体及其相互联系被转换成数据世界中的数据及其联系,这种联系是用数据模型描述的。关键词:数据联系数据模型,4.2 概念模型与数据模型,10,因此,客观事物系信息之源,是设计数据库的出发点,也是使用数据库的最终归宿。实体模型(概念模型)与数据模型是对客观事物及其联系的两种抽象描述。
7、数据库的核心问题是数据模型,为了得到正确的模型,首先要充分了解客观事物。4.现实世界、信息世界、数据世界的关系,4.2 概念模型与数据模型,11,二、概念模型,4.2 概念模型与数据模型,现实世界中的事物在人们头脑中反映的信息世界是用文字和符号记载下来的,描述事物的术语有以下几种:1.实体(Entity)客观世界中存在的并可以相互区分的事物或概念,称为实体。实体可以是具体的,如一个学生、一本书;也可以是抽象的事件,如一场足球比赛。实体的表征:实体用型(Type)和值(Value)来表征。例如:一个学生是一个实体,学生的“学号,姓名,年龄,系别”是实体的型描述,而具体的学生:“021031001
8、,王明,20,计信系”是实体值。2.属性(Attribute)实体所具有的某一特性在信息世界中称为属性。一个实体可以由若干个属性来刻画。例:一个学生有姓名、性别、年龄等属性。属性的域:属性的取值范围称为该属性的域。每个属性都有一个值域(Domain),例:性别“男”、”女”,年龄2035;值域有类型,可以是整数,实数或字符型等。例姓名的类型为字符型,年龄的类型为整型。属性的表征:属性用型(Type)和值(Value)表征,例:学号、姓名、性别、年龄、是属性的型,而具体的021031001、王明、男、20则是属性值。,12,4.2 概念模型与数据模型,4.实体型(Entity Type)或实体的
9、描述具有相同属性的实体必然具有共同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。如,学生实体,其型的描述为:学生(学号,姓名,性别,年龄)是一个实体型。4.实体值是实体的具体实例,是属性值的集合。如,学生王明的实体值是:(021031001,王明,男,18)。属于同一实体集的实体的实体型是相同的,但实体值是不同的。5.实体集(Entity set)性质相同的同类实体的集合称为实体集。或同型实体的集合称为实体集。如,一班学生,一批书籍。6.码(键Key)能惟一标识实体集中每个实体的属性或属性组称为实体集的码(键Key)。当一个实体集中包括多个码时,通常要选定其中一个码为主
10、码,其他是候选码,实体集中不能惟一标识实体属性的叫次码。,13,4.2 概念模型与数据模型,7.实体集联系建立实体模型的一个重要任务就是要找出实体集之间的联系。常见的实体集联系有以下3种:(设A和B为两个实体集,用 矩形表示实体集,菱形表示联系)。一对一联系(1:1)如果A 中的任一实体至多对应B 中的一个实体;且B中的任一实体至多对应A中的一个实体,则称A 与B是一对一联系。例:电影院观众与座位实体集之间、乘车旅客与车票之间、病人与病床之间等都是一对一联系。,叫E 图,也称为E 模型,14,4.2 概念模型与数据模型,一对多联系(1:N)如果A 中至少有一个实体对应B中一个以上实体,且B中任
11、一实体至多对应A中一个实体,则称A对B是一对多联系。例:学校对系、班级对学生等都是一对多联系。,15,4.2 概念模型与数据模型,多对多联系(M:N)如果A中至少有一个实体对应B中一个以上实体,且B中也至少有一个实体对应A中一个以上实体,则称A与B是多对多联系。例如:学生与课程、工厂与产品、商品与顾客等都是多对多联系。,16,4.2 概念模型与数据模型,8.E-R模型E-R模型是一种语义模型,又叫E-R图、实体联系模型(EntityRelationship Approach)E-R模型的构成成分是实体集、属性和联系集(一对一、一对多、多对多)。构成方法如下:实体集用矩形框表示,框内写上实体集名
12、。实体的属性用圆或椭圆表示,其内写上属性名,并用无向边与其实体集相连。,17,4.2 概念模型与数据模型,实体集间的联系用菱形框表示,联系以适当含义命名,名字写在菱形框内,用无向连线将参加相应联系的实体矩形框分别与菱形相连,并在连线上标明联系的类型。,注意:1和M要写在对应实体矩形那边的连线上,不可写反。,18,4.2 概念模型与数据模型,19,4.2 概念模型与数据模型,例:班级、学生实体集及其联系。,实体集:学生:学号、姓名、性别、年龄;班级:班级号、班级名、人数;属性:“学号”、“班级号”分别是学生实体集和班级实体集的码或键,故其属性名有下划线。“人数”属性是派生属性(其值可以从其他相关
13、实体或属性中派生出来),其值可以通过计算该班级学生实体的数目而获得,故用虚椭圆形框表示。联系:“属于”是1对多,由于参与者“学生”在“属于”联系中是全部的,所以用双线将其与“属于”联系相连。,20,4.2 概念模型与数据模型,例:“课程”实体集、“教师”实体集及相互间的联系。,21,其中:“E-mail地址”属性是一个多值属性,故用双椭圆形框表示;“家庭地址”属性是一个复合属性,在其下面还有4个属性与其相连。“教师号”下有一下划线,表示此属性是“教师”实体的码(键)。总之:E-R模型是数据库设计人员与用户进行交互的最有效工具,用E-R模型来描述概念模非常接近人的思维,易被人理解,而且E-R模型
14、与具体的计算机系统无关,易被不具备计算机知识的最终用户接受。,4.2 概念模型与数据模型,22,人们常常首先将现实世界抽象为信息世界,然后将信息世界转换为机器世界。也就是说,首先把现实世界中的客观对象抽象为某一种信息结构,这种信息结构并不依赖于具体的计算机系统,不是某一个DBMS支持的数据模型,而是概念级的模型;然后再把概念模型转换为计算机上某一DBMS支持的数据模型。,4.2 概念模型与数据模型,概念模型小结,23,4.2 概念模型与数据模型,定义:反映实体集之间联系的模型称为模念模型,又称为实体模型。它独立于计算机系统,它是按用户的观点来描述某个业务所关心的信息结构,是对现实世界的第一层抽
15、象。数据库设计的重要任务就是建立概念(实体)模型,它是概念数据库的具体描述。在建立实体模型中,实体要逐一命名以示区别,并描述其间的各种联系。概念模型的表示:用E-R图(E-R模型、实体-联系模型)。,任务2 关系模型设计,2.1 任务情境将任务1的“学生选课管理系统”的ER模型转换为关系模型2.2 任务实现首先转换两个实体为关系。学生关系模式s(sno,class,sname,ssex,birthday,address,tel,email)课程关系模式c(cno,cname,credit)再转换一个联系为关系。选课关系模式sc(sno,cno,score)最后将具有相同码的关系合并,得出新的关
16、系模型如下表4-2所示。,25,在描述现实世界的过程中,通常将模型分为两个层次:第1是概念模型(也称信息模型、实体模型),它是对现实世界的第一层抽象,是根据用户的观点对信息建模,与计算机系统无关;第2是数据模型,是对现实世界的第二层抽象,直接与DBMS有关,这类模型有严格的形式化定义,以便于在计算机系统中实现。它通常有一组严格定义的无二义性语法和语义的数据库语言,人们可以用这种语言来定义、操作数据库中的数据。定义:一般地讲,数据模型是严格定义的概念的集合,这些概念精确地描述了系统的静态特征、动态特征和完整性约束。因此,数据模型通常由数据结构、数据操作和完整性约束三部分组成,又称为数据模型的三要
17、素。,4.3 数据模型,26,4.3 数据模型,数据模型三要素1.数据结构数据结构是所研究的对象类型的集合。它规定了如何把基本的数据项组织成较大的数据单位,以描述数据的类型、内容、性质和数据之间的相互关系。它是数据模型最基本的组成部分,规定了数据模型的静态特性。在数据库系统中通常按照数据结构的类型来命名数据模型。例如,采用层次型数据结构、网状型数据结构和关系型数据结构的数据模型分别称为层次模型、网状模型和关系模型。,27,4.3 数据模型,2.数据操作数据操作是对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及操作规则。数据库操作主要包括查询和更新(包括扦入、删除、修改)两类
18、操作。数据模型要给出这些操作确切的含义,操作规则和实现操作的语言。因此,数据操作规定了数据模型的动态特性。4.数据约束数据约束是指一组完整性规则的集合。完整性规则是对给定的数据模型中的数据及其联系所制定的约束和依存规则,用以限定符合数据模型的数据库状态以及可容许的状态改变,以保证数据库中的数据的正确性、有效性和相容性。,28,4.3 数据模型,完整性约束的定义对数据模型的动态特性做了进一步的描述与限定。因为在某些情况下,若只限定使用的数据结构及可在该结构上执行的操作,仍然不能确保数据的正确性、有效性和相容性。为此,每种数据模型都规定有通用和特殊的完整性约束条件:通用的完整性约束条件:通常把具有
19、普遍性的问题归纳成一组通用的约束规则,只有在满足给定约束规则的条件下才允许对数据库进行更新操作。例如,关系模型中通用的约束规则是实体完整性和参照完整性。特殊的完整性约束条件。把能够反映某一应用所涉及的数据所必须遵守的特定的语义约束条件定义成特殊的完整性条件。例如,关系模型中特殊的约束规则是用户定义的完整性。又例如,在实行学分制的条件下,一个学籍管理数据库中学生的修业年限限定在6年之内。,29,4.3 数据模型,常见的三种数据模型数据库系统中最常使用的数据模型是:层次模型(hierarchical model)网状模型(network model)关系模型(relational)不同的数据模型具
20、有不同的数据结构形式、操作特点。层次模型:是数据库中使用得较早的一种数据模型,30,4.3 数据模型,2.网状模型在现实世界中事物之间的联系更多的是非层次关系,用层次模型表示非树形结构是很不直接的,网状模型则可以克服这一弊病。结构是结点的连通图:,31,4.关系模型关系模型是目前最重要的、应用最广泛的一种数据模型。原因:首先,关系模型是建立在严格的数学概念基础上的,有其坚实的数学基础。其次这种数据模型被实践证明是正确有效的数据模型。数据结构在用户看来,一个关系模型的逻辑结构是一张二维表,它由行和列组成。亦即,在关系数据模型中,把二维表格称为关系(Relation)。,4.3 数据模型,32,术
21、语:字段(Field)信息世界中的“属性”一词,在数据世界中使用“数据项”一词进行描述;从数据库的角度讲,数据项就是字段;从表格的角度讲,数据项称为列,通常使用字段这一名词比较通俗。例如:学生的学号、姓名、年龄、性别就是字段的字段名,字段和属性一样,也用“型”和“值”表征。由此可见,字段、属性、数据项、列这些术语,所描述的对象是相同的,只是在不同角度,叫法不同而已。记录(Record)字段的有序集合称为记录,在关系模型中,记录称为元组;在表中,记录称为一行;在概念模型中称为实体。即实体、记录、元组和行是从不同的角度描述同一个对象。记录也由“型”和“值”来描述:记录型是字段型的集合,记录值是字段
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 概念 模型 关系 设计

链接地址:https://www.31ppt.com/p-6050228.html