第3讲 数据库设计方法—逻辑模型以及ER模型到关系模型的转化_第1页
第3讲 数据库设计方法—逻辑模型以及ER模型到关系模型的转化_第2页
第3讲 数据库设计方法—逻辑模型以及ER模型到关系模型的转化_第3页
第3讲 数据库设计方法—逻辑模型以及ER模型到关系模型的转化_第4页
第3讲 数据库设计方法—逻辑模型以及ER模型到关系模型的转化_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1回顾回顾p 数据库的三级模式数据库的三级模式:外模式:外模式用户视图,模式用户视图,模式全全局视图,内模式局视图,内模式物理视图。物理视图。p 通过两级映射提高数据的逻辑独立性和物理独立性。通过两级映射提高数据的逻辑独立性和物理独立性。p 概念模型中的两个概念:实体、联系概念模型中的两个概念:实体、联系.p 数据模型数据模型包括:包括:概念模型概念模型、逻辑模型逻辑模型、物理模型、物理模型p 概念模型的两个基本概念概念模型的两个基本概念实体与联系,实体与联系,E-R模型模型是一种概念模型表示方法是一种概念模型表示方法.p 逻辑模型逻辑模型:层次型、网状、关系型:层次型、网状、关系型马上讲解马

2、上讲解2数据库原理与应用数据库原理与应用第第3讲讲 数据库设计方法数据库设计方法逻辑模型逻辑模型以及以及ER模型到关系模型的转化模型到关系模型的转化3本讲内容、重点和难点本讲内容、重点和难点n 重点重点p逻辑模型:层次型、网状、关系型三种数据模型的比逻辑模型:层次型、网状、关系型三种数据模型的比较较pER模型到关系模型的转化模型到关系模型的转化n 难点难点p关系数据库概述关系数据库概述p关系型逻辑模型关系型逻辑模型是当前最常见的是当前最常见的数据库逻辑模型数据库逻辑模型41. 逻辑模型逻辑模型1. 逻辑模型的三个作用逻辑模型的三个作用2. 三种逻辑模型三种逻辑模型5逻辑模型的作用逻辑模型的作用

3、p概念模型只能反映实体概念模型只能反映实体-联系,还没有指出以什么样的联系,还没有指出以什么样的方式来方式来组织数据和操作数据组织数据和操作数据。完成这项任务的是逻辑。完成这项任务的是逻辑模型。模型。p逻辑模型要体现三个方面的特征逻辑模型要体现三个方面的特征1)数据结构数据结构,描述数据用什么样的结构组织起来,描述数据用什么样的结构组织起来2)数据操作数据操作,描述可以在数据上进行什么样的操作,描述可以在数据上进行什么样的操作3)数据约束条件数据约束条件,描述数据之间的约束规则,描述数据之间的约束规则p常见的逻辑模型有:常见的逻辑模型有:层次数据模型、网状数据模型、层次数据模型、网状数据模型、

4、关系数据模型。关系数据模型。6(1 1)层次型)层次型通过通过树树形结构表示实体及联系。如描述学校管理机构。每形结构表示实体及联系。如描述学校管理机构。每个个结点结点表示一个表示一个实体(型),实体(型),箭头表示实体(型)间的箭头表示实体(型)间的联系联系(由父到子)。(由父到子)。7(2)(2)网络型网络型通过通过网状结构网状结构表示实体及联系。表示实体及联系。“网网”中每个结点表示中每个结点表示一个实体一个实体( (型型) ),结点之间箭头表示实体,结点之间箭头表示实体( (型型) )间的联系。间的联系。8层次与网络模型层次与网络模型优缺点优缺点: :优点优点: :能直观、形象地描述实体

5、及其联系,易于被能直观、形象地描述实体及其联系,易于被人们所理解和掌握人们所理解和掌握 。缺点缺点: :数据结构较复杂,存储数据需要更多的链接数据结构较复杂,存储数据需要更多的链接指针;在检索数据时,需要考虑数据的存储路径;在插入指针;在检索数据时,需要考虑数据的存储路径;在插入或删除数据时,涉及到调整链接指针。或删除数据时,涉及到调整链接指针。9(3) 关系型关系型关系模型与关系模型与层次模型和网状模型层次模型和网状模型相比有着相比有着本质本质的差别,的差别,它是用它是用二维表格二维表格来表示实体及其相互之间的联系。来表示实体及其相互之间的联系。 编号编号姓名姓名性别性别婚否婚否出生日期出生

6、日期职称职称基本工基本工资资23101 张伶俐张伶俐女女已婚已婚09/24/56教授教授138023102 罗稼宛罗稼宛男男已婚已婚11/27/73讲师讲师56023103 黎达仁黎达仁男男未婚未婚12/23/81助教助教45023104 顾高粲顾高粲男男已婚已婚01/27/63副教授副教授97023105 黄丹秋黄丹秋女女未婚未婚07/15/79助教助教480教师关系表教师关系表10关系模型的基本概念关系模型的基本概念1关系关系p 将一个没有重复行、重复列的二维表看成一个关系。将一个没有重复行、重复列的二维表看成一个关系。2元组(记录)元组(记录)p 二维表的每一行在关系中称为关系的一个元组

7、。二维表的每一行在关系中称为关系的一个元组。3属性(字段)属性(字段)p 二维表的每一列在关系中称为属性。二维表的每一列在关系中称为属性。4关键字关键字p 关系中用于区分和标示不同元组的属性组合。关系中用于区分和标示不同元组的属性组合。5外部关键字外部关键字p 如果关系中某个属性组合是另一个关系的关键字,则如果关系中某个属性组合是另一个关系的关键字,则称此属性组合为本关系的外部关键字。外部关键字体称此属性组合为本关系的外部关键字。外部关键字体现表间的联系。现表间的联系。6.元元p 属性个数属性个数(n)称为关系的)称为关系的元元。11部门编号部门编号部门名称部门名称D001总经理办总经理办D0

8、02市场部市场部D003销售部销售部D004仓储部仓储部员工编员工编号号员工姓名员工姓名性性别别部门编部门编号号E001钱达理钱达理男男D001E002东方牧东方牧男男D001E003郭文斌郭文斌男男D002E004肖海燕肖海燕女女D003E005张明华张明华男男D004部门表部门表员工表员工表部门关系(部门关系(部门编号部门编号,部门名称)。,部门名称)。员工关系(员工关系(员工编号员工编号,姓名,性别,部门编号,姓名,性别,部门编号) )。部门关系中有部门关系中有4 4个元组,员工关系中有个元组,员工关系中有5 5个元组。个元组。员工关系的外部关键字是部门编号,体现了部门关系与员工关系的外

9、部关键字是部门编号,体现了部门关系与员工关系之间的联系。员工关系之间的联系。关系示例关系示例:12讨论:实体集用表格来表示是容易理解的,联系如何用表格讨论:实体集用表格来表示是容易理解的,联系如何用表格来表示呢?以选课系统为例。来表示呢?以选课系统为例。学号学号姓名姓名s1s1学生学生A As2s2学生学生B B学生表学生表教师号教师号姓名姓名t1 t1教师教师A At2 t2教师教师B B教师表教师表课编号课编号课程名课程名c1c1课程课程A Ac1c1课程课程B B课程表课程表学号学号课编号课编号修读学期修读学期s1s1c1c120102010春春s1s1c2c220102010春春s2s

10、2c1c120102010春春授课表(写写看)授课表(写写看)选课表选课表教师号教师号课编号课编号授课学期授课学期t1 t1c1c120102010春春t2 t2c2c220102010春春132. 物理模型物理模型物理模型物理模型p在逻辑模型确定后,要将逻辑模型提出的静态结构、动在逻辑模型确定后,要将逻辑模型提出的静态结构、动态结构、约束规则在计算机上进行实现,这项工作由态结构、约束规则在计算机上进行实现,这项工作由DBMS软件实现。软件实现。p目前的目前的DBMS大多支持关系型逻辑模型,比如大多支持关系型逻辑模型,比如Oracle, SQL Server,DB2等等。等等。p我们也可以开发

11、自己的我们也可以开发自己的DBMS,但这项工作的所需的人,但这项工作的所需的人力是很大的,所以当前软件行业的做法是:使用比较成力是很大的,所以当前软件行业的做法是:使用比较成熟的熟的DBMS系统,解决具体应用问题。因此,系统,解决具体应用问题。因此,物理模式物理模式一般不作过多的讨论一般不作过多的讨论。143.从从ER图导出关系模型数据结构图导出关系模型数据结构ERER图描述图描述信息的结构信息的结构,是是构造构造数据模型的数据模型的依据依据。从。从ERER图图出发导出关系模型数据结构出发导出关系模型数据结构的的两点原则两点原则: 对对ERER图中的每个图中的每个“实体集实体集”,都应转换成一

12、个关系;都应转换成一个关系; 对对ERER图中的图中的 “联系联系”,根据实体联系的方式,采取根据实体联系的方式,采取不同的方法加以处理;不同的方法加以处理;151) 两实体集间两实体集间1: N联系联系无需专门用一个关系表示无需专门用一个关系表示“联系联系”。可将。可将“1”1”方关方关系的系的主键主键纳入纳入“N”N”方关系中作为方关系中作为外键外键,同时把同时把联系联系的属性的属性也一起纳入也一起纳入“N”N”方关系中方关系中。16学校学校教师教师聘任聘任1N学校名学校名校址校址校长校长年薪年薪教工号教工号姓名姓名专长专长学校(学校(学校名学校名,校址,校长),校址,校长)教师(教师(教

13、工号教工号,姓名,专长,姓名,专长,学校名学校名,年薪),年薪)外键172) 两实体集间两实体集间M: N联系联系必须对必须对“联系联系”单独建立一个关系单独建立一个关系。“联系联系”关系关系的属性的属性至少至少包含包含它所关联的双方实体的它所关联的双方实体的“主键主键”,若若“联系联系”自身有属性,也要一起纳入自身有属性,也要一起纳入“联系联系”关系关系中。中。18学生学生课程课程选修选修MN学号学号姓名姓名性别性别成绩成绩课程号课程号课程名课程名学分学分学生(学生(学号学号,姓名,性别),姓名,性别)课程(课程(课程号课程号,课程名,学分),课程名,学分)选修(选修(学号学号,课程号课程号

14、,成绩),成绩)193) 两实体集间两实体集间1:1联系联系对两实体间对两实体间1 1:1 1联系,联系,有二种转换方案有二种转换方案:第一第一:“联系联系”不单独建立关系,将实体集不单独建立关系,将实体集A A主键放主键放到实体集到实体集B B中作为外键。中作为外键。第二第二: “联系联系”不单独建立关系,将实体集不单独建立关系,将实体集B B主键放主键放到实体集到实体集A A中作为外键。中作为外键。20校长校长学校学校管理管理11姓名姓名性别性别年龄年龄学校名学校名校址校址类别类别方案方案1:校长(校长(姓名姓名,性别,年龄),性别,年龄)学校(学校(学校名学校名,校址,类别,校址,类别,

15、姓名姓名)方案方案2学校(学校(学校名学校名,校址,类别),校址,类别)校长(校长(姓名姓名,性别,年龄,性别,年龄,学校名学校名)21以下的关系模型为以下的关系模型为补充内容补充内容 4) 同一实体集各实体间同一实体集各实体间1: N联系联系可在这个实体关系中可在这个实体关系中多设一个属性多设一个属性,用来表示与当前用来表示与当前实体(表中当前行)相联系的另一个实体实体(表中当前行)相联系的另一个实体的的“主键主键”。职工职工领导领导1N工号工号姓名姓名工资工资民意评价民意评价职工(职工(工号工号,姓名,工资,姓名,工资, 领导者工号领导者工号,民意评价),民意评价)另一个实体的主键另一个实

16、体的主键224) 同一实体集各实体间同一实体集各实体间1: N联系联系工号工号姓名姓名工资工资领导者工号领导者工号民意评价民意评价1 1陈一陈一8508503 3称职称职2 2李二李二8908903 3优秀优秀3 3张三张三9009003 3称职称职235) 同一实体集各实体间同一实体集各实体间M: N联系联系则需为则需为“联系联系”单独建一个关系单独建一个关系。该关系中至少应该关系中至少应包含被它联系的双方实体的包含被它联系的双方实体的“主键主键”,若若“联系联系”有属性,也要纳入该关系中。有属性,也要纳入该关系中。课程课程预修预修MN课程号课程号课程名课程名学分学分课程(课程(课程号课程号

17、,课程名,学分),课程名,学分)预修(预修(课程号课程号,预修课程号预修课程号)246) 多个实体集间多个实体集间M: N联系联系必须为必须为“联系联系”单独建一个关系单独建一个关系。该关系中至少应该关系中至少应包含被它联系的双方实体的包含被它联系的双方实体的“主键主键”,若若“联系联系”有有属性,也要纳入该关系中。属性,也要纳入该关系中。25工程项目工程项目零件零件需求需求MP工程号工程号工程名工程名工程进度工程进度数量数量零件名零件名单价单价厂址厂址工程项目(工程项目(工程号工程号,工程名,工程名,工程进度)工程进度)厂家(厂家(厂名厂名,厂址),厂址)需求(需求(工程号,厂名,零件名工程

18、号,厂名,零件名,数量)数量)厂家厂家N厂名厂名零件(零件(零件名零件名,单价),单价)26小结小结1. 逻辑模型能够表现数据结构、数据操作、数据约束。逻辑模型能够表现数据结构、数据操作、数据约束。2. 逻辑模型有层次型、网络型、关系型三种,关系模型逻辑模型有层次型、网络型、关系型三种,关系模型是当前数据库的主要数据模型。是当前数据库的主要数据模型。3. 为了表示数据在计算机上如何组织、如何操作、如何为了表示数据在计算机上如何组织、如何操作、如何约束,约束,应将应将E-R模型转换为逻辑模型模型转换为逻辑模型。4. 关系型逻辑模型是当前最常见的数据库逻辑模型。关系型逻辑模型是当前最常见的数据库逻

19、辑模型。27小课内容小课内容281. 问题问题 20分钟分钟1. 有人说:有人说:“E-R模型只能转换为关系模型,不能转换模型只能转换为关系模型,不能转换为层次模型或网络模型为层次模型或网络模型”,这种说法对么?,这种说法对么?2. 简述简述E-R模型转换为关系模型规则(模型转换为关系模型规则(1:1, 1:N, N:M)292. E-R图练习图练习 50分钟分钟题题1:某学院的教学管理的对象是:系(系名,办公地址)、教师:某学院的教学管理的对象是:系(系名,办公地址)、教师(教师工号、姓名、年龄、职称)、学生(学号,姓名,生日)、(教师工号、姓名、年龄、职称)、学生(学号,姓名,生日)、课程

20、(课程号,课程名,学分)。其中,一个系有多个教师每个课程(课程号,课程名,学分)。其中,一个系有多个教师每个教师只属于一个系,每个老师可上多门课,每门课只由一个老师教师只属于一个系,每个老师可上多门课,每门课只由一个老师上,每个学生可以在某学期选修多门课,每门课可有多个学生选上,每个学生可以在某学期选修多门课,每门课可有多个学生选修。修。题题2:某旅行社管理系统管理的对象是:某旅行社管理系统管理的对象是: 景点(景点编号,景点名景点(景点编号,景点名称,地点,景点描述)、线路(线路编号,线路名称,线路描称,地点,景点描述)、线路(线路编号,线路名称,线路描述)、导游(工号,姓名,等级)、旅游团队(团队编号,人数,述)、导游(工号,姓名,等级)、旅游团队(团队编号,人数,开始日期,截止日期),其中,每条线路由多个景点组成,不同开始日期,截止日期),其中,每条线路由多个景点组成,不同线路的景点存在交叉;每条线路有多名导游,但一名导游只负责线路的景点存在交叉;每条线路有多名导游,但一名导游只负责一条线路;一条线路; 每条线路可同时存在多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论