第2章 数据库的基本操作_第1页
第2章 数据库的基本操作_第2页
第2章 数据库的基本操作_第3页
第2章 数据库的基本操作_第4页
第2章 数据库的基本操作_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、学习要点学习要点 理解数据库基础、熟悉理解数据库基础、熟悉 关系数据库的基本原理关系数据库的基本原理 掌握关系数据库的设计方法掌握关系数据库的设计方法 了解了解SQL Server 的数据库概念的数据库概念 掌握数据库的创建和维护方法掌握数据库的创建和维护方法2.1-2.2节节2.4节节2.5-2.6节(重点)节(重点)第二章第二章 数据库的基本操作数据库的基本操作2.3节节2 2.1 .1 数据库基础数据库基础2.1.1 数据库的发展数据库的发展 数据管理:对数据进行数据管理:对数据进行分类、组织、编码、存储、检索和维护,是分类、组织、编码、存储、检索和维护,是数据处理的中心问题数据处理的中

2、心问题 数据管理技术的发展数据管理技术的发展过程过程 数据管理技术的发展动力数据管理技术的发展动力应用需求的推动应用需求的推动计算机硬件的发展计算机硬件的发展计算机软件的发展计算机软件的发展2.1 2.1 数据库基础数据库基础2.1.1 数据库的发展数据库的发展 数据库技术产生的催产剂数据库技术产生的催产剂阿波罗登月阿波罗登月1969年,年,IBM公司受托为阿波罗登月计划进行数据支持,出品世界第公司受托为阿波罗登月计划进行数据支持,出品世界第一款数据库软件一款数据库软件-IMS2.1 2.1 数据库基础数据库基础2.1.2数据库的基本概念数据库的基本概念数据(数据(DataData) 数据数据

3、的作用:数据是数据库中存储的基本对象的作用:数据是数据库中存储的基本对象 数据的定义:数据的定义:描述事物的符号记录描述事物的符号记录 数据的种类:文字、图形、图象、声音、数字、语言等数据的种类:文字、图形、图象、声音、数字、语言等 学生档案中的学生记录学生档案中的学生记录(李明,男,(李明,男,19941994,江苏,江苏,信息工程信息工程学院,学院,20142014. .9.019.01) 数据的语义:学生姓名、性别、出生年份、籍贯、所在院系、数据的语义:学生姓名、性别、出生年份、籍贯、所在院系、入学时间入学时间 数据的解释:李明是个大学生,数据的解释:李明是个大学生,19941994年年

4、出生,江苏人,出生,江苏人,20142014年年考入考入信息工程信息工程学院学院2.1 2.1 数据库基础数据库基础2.1.2 数据库的基本数据库的基本概念概念数据库数据库(Database, DB)学生登记表学生登记表学学 号号姓姓 名名年年 龄龄性性 别别系系 名名年年 级级95004王小明王小明19女女社会学社会学9595006黄大鹏黄大鹏20男男商品学商品学9595008张文斌张文斌18女女法律学法律学95 数据库是数据库是长期长期储存在计算机内、有储存在计算机内、有组织组织的、可的、可共享共享的的大量大量数据集合数据集合 数据库的特征:数据按一定的数据库的特征:数据按一定的数据模型数

5、据模型组织、描述和储存;可组织、描述和储存;可为各种用户为各种用户共享共享;冗余度冗余度较小;较小;数据独立性数据独立性较高;较高;易扩展易扩展。2.1 2.1 数据库基础数据库基础2.1.2 数据库的基本概念数据库的基本概念数据库管理系统(数据库管理系统(DBMS) 数据库管理系统数据库管理系统是位于用户与操作系统之间的一层数据管理软件是位于用户与操作系统之间的一层数据管理软件 (图图1.2) DBMS的用途:的用途:科学地组织和存储数据、高效地获取和维护数据。科学地组织和存储数据、高效地获取和维护数据。(核心功能)2.1 2.1 数据库基础数据库基础2.1.2 数据库的基本概念数据库的基本

6、概念数据库系统(数据库系统(DBS) 特点特点数据的管理者:数据的管理者:DBMSDBMS数据面向的对象:现实世界数据面向的对象:现实世界数据的共享程度:共享性高数据的共享程度:共享性高数据的独立性:高度的物理独立性和一定的逻辑独立性数据的独立性:高度的物理独立性和一定的逻辑独立性数据的结构化:整体结构化数据的结构化:整体结构化数据控制能力:由数据控制能力:由DBMSDBMS统一管理和控制统一管理和控制DBMSDBMS应用程序应用程序1 1应用程序应用程序2 2数据库数据库优点:优点: 降低数据的冗余度,节省存储空间降低数据的冗余度,节省存储空间 避免数据间的不一致性避免数据间的不一致性 使系

7、统易于扩充使系统易于扩充 物理独立性:指用户的物理独立性:指用户的应用程序与存储在磁盘上的数据库中数据是相互应用程序与存储在磁盘上的数据库中数据是相互独立的。独立的。当数据的物理存储改变了,应用程序不用改变。当数据的物理存储改变了,应用程序不用改变。 逻辑独立性:指用户的逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的应用程序与数据库的逻辑结构是相互独立的。数数据的逻辑结构改变了,用户程序也可以不变。据的逻辑结构改变了,用户程序也可以不变。实现的是数据的真正结构化实现的是数据的真正结构化数据的结构用数据模型描述,无需程序定义和解释数据的结构用数据模型描述,无需程序定义和解释数据可以变

8、长数据可以变长数据的最小存取单位是数据项数据的最小存取单位是数据项什么是数据库系统什么是数据库系统数据库系统数据库系统是指在计算机系统中引入数据是指在计算机系统中引入数据库后的系统构成。库后的系统构成。在不引起混淆的情况下常常把数据库系统在不引起混淆的情况下常常把数据库系统简称为数据库。简称为数据库。用户用户用户用户用户用户应用系统应用系统应用开发工具应用开发工具数据库管理系统数据库管理系统操作系统操作系统数据库管理员数据库管理员数据库数据库分析:分析:数据库的建立、使用和维数据库的建立、使用和维护应由数据库管理系统和数据库护应由数据库管理系统和数据库管理员共同完成管理员共同完成2.1 2.1

9、 数据库基础数据库基础2.1.3数据库系统的构成数据库系统的构成它由数据库、数据库管理系统、数据库应用系统、用户它由数据库、数据库管理系统、数据库应用系统、用户(程序员、最终用户和数据库管理员)构成。(程序员、最终用户和数据库管理员)构成。图图1.2 1.2 数据库在计算机中的地位数据库在计算机中的地位硬件硬件操作系统操作系统DBMSDBMS编译系统编译系统应用开发工具软件应用开发工具软件应用系统应用系统操作系统操作系统2.1 2.1 数据库基础数据库基础2.1.3数据库系统的构成数据库系统的构成2 2.2.2关系数据库的基本原理关系数据库的基本原理 数据模型就是对现实世界的模拟。数据模型就是

10、对现实世界的模拟。在数据库中用在数据库中用数据模型数据模型这个这个工具来工具来抽象、表示和处理抽象、表示和处理现实世界中的数据和信息。现实世界中的数据和信息。 数据模型数据模型分为两类分为两类概念模型:按用户的观点对现实数据的抽象概念模型:按用户的观点对现实数据的抽象结构数据模型结构数据模型:从计算机的角度对现实数据的抽象:从计算机的角度对现实数据的抽象2.2.1数据模型数据模型2.22.2关系数据库的基本原理关系数据库的基本原理2.2.1数据模型数据模型1.1.概念模型概念模型 用于信息世界的建模,也用于信息世界的建模,也是数据库设计人员与用户之间是数据库设计人员与用户之间交流的语言。交流的

11、语言。 不依赖于具体的计算机系不依赖于具体的计算机系统和某一统和某一DBMSDBMS的模型。的模型。2.22.2关系数据库的基本原理关系数据库的基本原理2.2.1数据模型数据模型概念模型概念模型实体(实体(Entity) :客观存在客观存在并可相互区别的事物。可以并可相互区别的事物。可以 是具体的人、是具体的人、事、物或抽象的概念。如:学生,教材,课程等事、物或抽象的概念。如:学生,教材,课程等属性(属性(Attribute) :实体所具有的某一特性。一个实体可以由若干个:实体所具有的某一特性。一个实体可以由若干个属性来刻画。如:学号,姓名,性别等属性来刻画。如:学号,姓名,性别等 码(码(K

12、ey) :唯一标识实体的:唯一标识实体的属性。属性。如:学号或姓名(无重名时)如:学号或姓名(无重名时) 域(域(Domain) :属性的取值范围。:属性的取值范围。 如:性别的域为如:性别的域为男,女男,女联系(联系(Relationship):指:指实体之间的相互实体之间的相互关联关联 一个联系中涉及的实体的个数称为联系的一个联系中涉及的实体的个数称为联系的元元。元为。元为2的联系是最普遍的联系是最普遍的联系,通常被称为二元联系。可分为一对一联系(的联系,通常被称为二元联系。可分为一对一联系(1:1)、一对多联系)、一对多联系(1:n)和多对多()和多对多(m:n)。2.22.2关系数据库

13、的基本原理关系数据库的基本原理2.2.1数据模型数据模型概念模型概念模型l两个实体型间两个实体型间的联系的联系一对一联系(一对一联系(1:1) :如果对于实体集:如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中至多至多有一个实体与之联系,且反之亦然,有一个实体与之联系,且反之亦然,则称则称实体集实体集A与实体集与实体集B具有具有一对一联系,记为一对一联系,记为1:1。 如班级与正班长之间的联系。如班级与正班长之间的联系。一对多联系(一对多联系(1:n):如果对于实体集:如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之

14、,对于实体集)与之联系,反之,对于实体集B中的每一个实体,中的每一个实体,实体集实体集A中至多只有一个实体与之联系,则称中至多只有一个实体与之联系,则称实体集实体集A与实体集与实体集B有一有一对多联系,记为对多联系,记为1:n。如班级与学生之间的联系。如班级与学生之间的联系。多对多联系(多对多联系(m:n):如果对于实体集:如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实体集)与之联系,反之,对于实体集B中的每一个实体,中的每一个实体,实体集实体集A中也有中也有m个实体(个实体(m0)与之联系,则称)与之联系,则称实体集实体集

15、A与实体与实体B具具有多对多联系,记为有多对多联系,记为m:n。如课程与学生之间的联系。如课程与学生之间的联系。2.22.2关系数据库的基本原理关系数据库的基本原理2.2.1数据模型数据模型概念模型概念模型两个实体型间联系(两个实体型间联系(3类)类): 班级班级拥有拥有正班长正班长111:1联系联系学生学生选修选修课程课程mnm:n联系联系班级班级拥有拥有学生学生1n1:n联系联系2.22.2关系数据库的基本原理关系数据库的基本原理2.2.1数据模型数据模型概念概念模型的表示方法模型的表示方法 实体实体-联系联系表示表示方法方法(E-R图图)对对对象类型对象类型类型类型表示表示表示方法表示方

16、法E-R图表示图示图表示图示实体实体用用矩形矩形表示,矩形框内写型明实体名表示,矩形框内写型明实体名属性属性用用椭圆形椭圆形表示,并用表示,并用无向边无向边将其与相应将其与相应的实体连接起来。的实体连接起来。联系联系用用菱形菱形表示,菱形内标明联系名称,表示,菱形内标明联系名称,并并用用无向边无向边将其与相应的实体连接起来,将其与相应的实体连接起来,并在无向边旁标注联系的类型(并在无向边旁标注联系的类型(1 1、m m、n n)。联系也可以有属性,如有用)。联系也可以有属性,如有用无向边无向边将其与相应的实体连接起来将其与相应的实体连接起来实体名实体名属性名属性名联系名联系名2.2.1数据模型

17、数据模型E-RE-R图实例图实例2.22.2关系数据库的基本原理关系数据库的基本原理实例实例2:根据以下:根据以下描述,描述,为为某百货公司某百货公司设计设计E-R模型模型。百货公司百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。若干职工,但每个职工只能服务于一家商店。 实体型实体型“商店商店”的属性有:店号、店名、店址、店经理。的属性有:店号、店名、店址、店经理。 实体型实体型“商品商品”的属性有:商品号、品名、单价、产地。的属性有:商品号、品名、单价、产地。 实体型实体型“职工职工”的属性有

18、:工号、姓名、性别、工资。的属性有:工号、姓名、性别、工资。 在联系中应反映职工参加某商店工作的开始时间、商店销售商品在联系中应反映职工参加某商店工作的开始时间、商店销售商品的月销售量。的月销售量。2.22.2关系数据库的基本原理关系数据库的基本原理商店商店职工职工商品商品工作工作经营经营工号工号姓名姓名性别性别工资工资店址店址店名店名店号店号开始时间开始时间单价单价品名品名商品号商品号店经理店经理产地产地月销售量月销售量1nmn完整的实体-联系图2.2.1数据模型数据模型E-RE-R图实例图实例2.2.1数据模型数据模型E-RE-R图练习图练习2.22.2关系数据库的基本原理关系数据库的基本

19、原理实例实例3:对某公司的销售业务有如下描述:一个:对某公司的销售业务有如下描述:一个客户客户可以下多个订可以下多个订单单,一张,一张订单订单只属于一个客户;一张订单有多个只属于一个客户;一张订单有多个订单项目订单项目,一,一个订单项目只属于一张订单;一个订单项目中只包含一种个订单项目只属于一张订单;一个订单项目中只包含一种产品产品,一种产品可以出现在多个订单项目中。,一种产品可以出现在多个订单项目中。请根据理解画出该业请根据理解画出该业务的务的E-R图。图。 产品产品1m订单项目订单项目1n客户客户订单订单n下订单下订单包含包含属于属于实体及其联系图2.2.1数据模型数据模型E-RE-R图练

20、习图练习2.22.2关系数据库的基本原理关系数据库的基本原理实例实例4 4:假设要建立一个企业数据库,该企业有多个下属单位,每:假设要建立一个企业数据库,该企业有多个下属单位,每个单位有多个职工,一个职工仅隶属于一个单位,且一个职工个单位有多个职工,一个职工仅隶属于一个单位,且一个职工仅在一个工程中工作,但一个工程中有很多职工参加工作,仅在一个工程中工作,但一个工程中有很多职工参加工作,有有多个供应商为各个工程供应不同设备。多个供应商为各个工程供应不同设备。请设计请设计E-RE-R图图。 单位的属性有:单位名,电话。单位的属性有:单位名,电话。 职工的属性有:职工号,姓名,性别。职工的属性有:

21、职工号,姓名,性别。 设备的属性有:设备号,设备名,产地。设备的属性有:设备号,设备名,产地。 供应商的属性有:姓名,电话。供应商的属性有:姓名,电话。 工程的属性有:工程名,地点。工程的属性有:工程名,地点。 姓名姓名单位单位职工职工隶属隶属职工号职工号姓名姓名性别性别电话电话单位名单位名单位号单位号1*工程工程完整的实体-联系图工作工作*1供应商供应商设备设备供应供应*工程号工程号地点地点供应商号供应商号电话电话设备号设备号设备名设备名产地产地2.22.2关系数据库的基本原理关系数据库的基本原理2.2.1数据模型数据模型结构数据模型结构数据模型常用的数据模型常用的数据模型层次层次模型模型用

22、用“树结构树结构”来表示数据之间的联系来表示数据之间的联系;网状模型网状模型是用是用“图结构图结构”来表示数据之间的联系;来表示数据之间的联系;关系模型关系模型是用是用“二维表二维表”来表示数据之间的联系来表示数据之间的联系。满足条件:满足条件:允许允许一个以上的节点无双亲。一个以上的节点无双亲。一个节点可以有一个以上的双亲一个节点可以有一个以上的双亲。满足条件: 有且仅有一个无双亲节点,这个节点称为“根节点”。 其他节点有且仅有一个双亲。R1 R2R4 R3R5 根节点 第一层 第二层第三层R1R1R1R1R1目前最重要的一种模型。SQL Server 就是一种典型的基于关系模型的数据库管理

23、系统。2.22.2关系数据库的基本原理关系数据库的基本原理2.2.2关系型数据库系统概述关系型数据库系统概述 最重要的一种数据模型。也是目前主要采用的数据模型。最重要的一种数据模型。也是目前主要采用的数据模型。 19701970年由美国年由美国IBMIBM公司公司San JoseSan Jose研究室的研究员研究室的研究员E.F.CoddE.F.Codd提出。提出。 在在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。组成。学生登记表学生登记表学学 号号 姓姓 名名 年年 龄龄 性性 别别 系系 名名 年年 级级 9

24、500495004 王小明王小明 1919 女女 社会学社会学 9595 9500695006 黄大鹏黄大鹏 2020 男男 商品学商品学 9595 9500895008 张文斌张文斌 18 女女 法律学法律学 9595 2.22.2关系数据库的基本原理关系数据库的基本原理2.2.2关系型关系型数据库系统概述数据库系统概述 关系(关系(RelationRelation):一个关系对应通常说的一张二维表):一个关系对应通常说的一张二维表 元组(元组(TupleTuple):表中的一行即为一个元组):表中的一行即为一个元组 属性(属性(AttributeAttribute):表中的一列即为一个属性

25、,给每一个属性起一):表中的一列即为一个属性,给每一个属性起一个名称即属性个名称即属性名名 主码(主码(PKPK):表中的一列的值唯一标识一个行。):表中的一列的值唯一标识一个行。 域(域(DomainDomain):属性的取值范围):属性的取值范围 关系关系模式:对关系的描述模式:对关系的描述关系名(属性关系名(属性1 1,属性,属性2 2,属性,属性n n)如:学生(学号,姓名,年龄,性别,系别,年级)如:学生(学号,姓名,年龄,性别,系别,年级)学学 号号 姓姓 名名 年年 龄龄 性性 别别 系系 名名 年年 级级 9500495004 王小明王小明 1919 女女 社会学社会学 959

26、5 9510695106 黄大鹏黄大鹏 2020 男男 商品学商品学 9595 9520895208 张文斌张文斌 18 女女 法律学法律学 9595 2.22.2关系数据库的基本原理关系数据库的基本原理2.2.2关系型关系型数据库系统概述数据库系统概述 关系型数据库的性质:关系型数据库的性质:关系中属性是最小的。关系中属性是最小的。关系关系中同一属性的所有属性值具有相同的数据类型。中同一属性的所有属性值具有相同的数据类型。关系中的属性名不能重复。关系中的属性名不能重复。关系的属性位置从左到右出现的顺序无关紧要。关系的属性位置从左到右出现的顺序无关紧要。关系关系中任意两个元组不能完全相同。中任

27、意两个元组不能完全相同。关系关系中的元组从上到下出现的顺序无关紧要。中的元组从上到下出现的顺序无关紧要。关系操作:集合运算为根据的关系操作:集合运算为根据的集合集合操作方式,操作对象和结果都是集合操作方式,操作对象和结果都是集合选择:选择满足条件的元组,从行的角度进行运算选择:选择满足条件的元组,从行的角度进行运算投影:从关系投影:从关系R R中选择若干属性组成新的关系,从列的角度进行运算中选择若干属性组成新的关系,从列的角度进行运算连接:两个关系的笛卡尔乘积中选择满足条件的元组,从行的角度进连接:两个关系的笛卡尔乘积中选择满足条件的元组,从行的角度进行运算行运算学学 号号 姓姓 名名 年年

28、龄龄 性性 别别 系系 名名 年年 级级 9500495004 王小明王小明 1919 女女 社会学社会学 9595 9510695106 黄大鹏黄大鹏 2020 男男 商品学商品学 9595 9520895208 张文斌张文斌 18 女女 法律学法律学 9595 2.22.2关系数据库的基本原理关系数据库的基本原理2.2.2关系型关系型数据库系统概述数据库系统概述 关系的完整性:由关系的完整性规则来定义,关系的完整性:由关系的完整性规则来定义,完整性完整性规则是对关系的某规则是对关系的某 种约束。完整性约束由如下三种。种约束。完整性约束由如下三种。u实体完整性规则:若属性实体完整性规则:若属

29、性A A是基本关系是基本关系R R的主码,则属性的主码,则属性A A不能为空。不能为空。 空值空值的含义为的含义为“未知未知”,而不是,而不是0 0或空字符串。或空字符串。u参照完整性规则:若属性参照完整性规则:若属性F F是基本关系是基本关系R R的外码,它与基本关系的外码,它与基本关系S S的主的主 码相对应,则对于码相对应,则对于R R中的每个元组在中的每个元组在F F上的值必须满足:取空值或上的值必须满足:取空值或 者等于者等于S S中的某个元组的主码值。中的某个元组的主码值。u用户自定义完整性:针对某些具体要求来定义的约束条件。用户自定义完整性:针对某些具体要求来定义的约束条件。2.

30、22.2关系数据库的基本原理关系数据库的基本原理2.2.3关系模型的规范化关系模型的规范化范式:范式:就是一种规则序列,这些规则可以简化数据库的设计就是一种规则序列,这些规则可以简化数据库的设计。范式的级别。范式的级别 越高,其数据库的设计越有效。越高,其数据库的设计越有效。1.1. 第一第一范式(范式(1NF1NF) 在关系模式在关系模式R R中的每一个具体关系中的每一个具体关系R R中,如果每个属性值都是不可中,如果每个属性值都是不可 再分的最小数据单元,则称再分的最小数据单元,则称R R是第一范式关系。(是第一范式关系。(去除重复的组去除重复的组)EgEg:学生(学号,姓名,性别,系名,

31、入学时间,家庭成员):学生(学号,姓名,性别,系名,入学时间,家庭成员) 分解:学生分解:学生(学号,姓名,性别,(学号,姓名,性别,系名,入学时间)系名,入学时间) 家庭(学号,家庭成员,亲属关系)家庭(学号,家庭成员,亲属关系)2.22.2关系数据库的基本原理关系数据库的基本原理2.2.3关系模型的规范化关系模型的规范化2.2.第二范式(第二范式(2 2NFNF) 关系当中的每一个非主属性都必须完全依赖于主键(关系当中的每一个非主属性都必须完全依赖于主键(简化实体的简化实体的 设计,避免出现大量的数据冗余设计,避免出现大量的数据冗余)EgEg:商品订单(商品编号,客户编号,订单编号,数量,

32、价格):商品订单(商品编号,客户编号,订单编号,数量,价格) 分解:订单(订单编号,客户编号)分解:订单(订单编号,客户编号) 订单明细(商品编号,订单编号,数量,价格)订单明细(商品编号,订单编号,数量,价格)3 3. .第三范式(第三范式(3NF3NF) 关系模式中的主键关系模式中的主键X X、属性组、属性组Y Y及属性组及属性组Z Z若不具有这样的关系:若不具有这样的关系: X XY,YY,YZ Z则称此关系模式满足第三范式。(则称此关系模式满足第三范式。(去掉主码外有关联关去掉主码外有关联关 系的系的属性,即所有非主码的属性之间不能有从属关系属性,即所有非主码的属性之间不能有从属关系)

33、EgEg:学生(学号,姓名,所在系编号,系名称,系地址):学生(学号,姓名,所在系编号,系名称,系地址) 学号学号所在所在系编号系编号,所在系所在系编号编号系系名称名称,所在系编号所在系编号系地址系地址 分解:学生(学号,姓名,系编号)分解:学生(学号,姓名,系编号) 系(系(系编号,系名称,系地址)系编号,系名称,系地址)2.22.2关系数据库的基本原理关系数据库的基本原理2.2.4 E-R模型到关系模型的转换模型到关系模型的转换1 1. .一对一联系一对一联系 转换方法:将联系与任意一端实体所对应的关系模型合并,在关系转换方法:将联系与任意一端实体所对应的关系模型合并,在关系 模式的属性中

34、加入另一个实体的主码和联系实体本身的属性。模式的属性中加入另一个实体的主码和联系实体本身的属性。2.2.一对多联系一对多联系 转换方法:将该联系与转换方法:将该联系与 n n 端实体所对应的关系模式合并。合并时需要端实体所对应的关系模式合并。合并时需要在在 n n 端实体的关系模式的属性中加入一端实体端实体的关系模式的属性中加入一端实体的主码和的主码和联系实体本身联系实体本身的的属性。属性。3.3.多对多联系多对多联系转换方法:将联系装换为一个关系模式。与该实体相连的各实体的主码和转换方法:将联系装换为一个关系模式。与该实体相连的各实体的主码和联系本身的属性装换为关系属性,关系模式的主码为各实

35、体主码的组合。联系本身的属性装换为关系属性,关系模式的主码为各实体主码的组合。2.32.3关系数据库的设计关系数据库的设计2.3.1数据库的设计原则数据库的设计原则目标:在目标:在 BDMS BDMS 的支持下,按照应用系统需求,设计一个结构合理、使用的支持下,按照应用系统需求,设计一个结构合理、使用 方便的且效率较高的数据库系统。方便的且效率较高的数据库系统。数据库设计涉及的两个方面:数据库设计涉及的两个方面: 1.1.数据库结构设计:从应用的数据结构角度对数据库的设计。由于数据数据库结构设计:从应用的数据结构角度对数据库的设计。由于数据 的结构是静态的,因此,数据库的结构设计又称为数据库的

36、静态的结构是静态的,因此,数据库的结构设计又称为数据库的静态 结构设计。结构设计。过程:现实世界中事物之间的联系过程:现实世界中事物之间的联系E-RE-R图表示图表示汇总汇总概念结构模型概念结构模型 关系结构模型关系结构模型2.2.数据库结构设计:根据应用系统用户的行为对数据库的设计,行为指的数据库结构设计:根据应用系统用户的行为对数据库的设计,行为指的 是数据查询统计、事务处理等。由于用户的行为是动态的,因此是数据查询统计、事务处理等。由于用户的行为是动态的,因此 数据库的行为设计又称为数据库的动态设计数据库的行为设计又称为数据库的动态设计。过程:现实世界的数据过程:现实世界的数据数据流图和

37、数据字典表示数据流图和数据字典表示系统的功能结构和数系统的功能结构和数 据库结构据库结构现实世界现实世界概念模型概念模型逻辑模型逻辑模型( (数据模型数据模型) )物理模型物理模型( (存储模型存储模型) )1、需求需求说明说明2、概念结构设计、概念结构设计3、逻辑、逻辑结构设计结构设计2.3.2数据库的设计步骤数据库的设计步骤需求分析需求分析概念设计概念设计逻辑设计逻辑设计物理设计物理设计数据库实施数据库实施运行维护运行维护概念模型概念模型E-RE-R图练习图练习实例实例5 5:某工厂生产若干产品,每种产品由特定数量的各种不同零:某工厂生产若干产品,每种产品由特定数量的各种不同零件组成件组成

38、,有的零件可以用在不同产品上。每种零件由特定数量有的零件可以用在不同产品上。每种零件由特定数量的各种不同的原材料制成,不同零件所用的材料可以相同。的各种不同的原材料制成,不同零件所用的材料可以相同。这这些些零件零件按照所属的不同产品分别放在按照所属的不同产品分别放在仓库仓库中,原材料按照类别中,原材料按照类别放在若干仓库中,放在若干仓库中,一个仓库中只存放一类原材料。将零件及原一个仓库中只存放一类原材料。将零件及原材料存放到仓库时分别记录存储量。材料存放到仓库时分别记录存储量。 产品的属性包括产品号,产品名;产品的属性包括产品号,产品名; 零件的属性包括零件号,零件名;零件的属性包括零件号,零

39、件名; 原材料的属性包括原材料号,原材料名,类别;原材料的属性包括原材料号,原材料名,类别; 仓库的属性包括仓库号,仓库名仓库的属性包括仓库号,仓库名。请画出请画出E-RE-R图,注明属性和联系类型。图,注明属性和联系类型。将将E E-R-R图转换为关系模型。图转换为关系模型。实体及其联系图产品的属性包括产品号,产品名;产品的属性包括产品号,产品名;零件的属性包括零件号,零件名;零件的属性包括零件号,零件名;原材料的属性包括原材料号,原材料名,类别;原材料的属性包括原材料号,原材料名,类别;仓库的属性包括仓库号,仓库名仓库的属性包括仓库号,仓库名。概念模型概念模型E-RE-R图练习图练习实例实

40、例6 6:某公司的业务特点主要包含以下几个方面的内容某公司的业务特点主要包含以下几个方面的内容: :公司下设几个公司下设几个部门部门, ,如技术部如技术部, ,财务部财务部, ,工程部工程部(1)(1)每个部门承担多个每个部门承担多个工程项目工程项目, ,每个工程项目属于一个部门每个工程项目属于一个部门(2)(2)每个部门有多个每个部门有多个职工职工, ,每个职工只属于一个部门每个职工只属于一个部门(3)(3)一名职工可能参与多个工程项目一名职工可能参与多个工程项目, ,每个工程允许多名职工参与每个工程允许多名职工参与(4)(4)每个部门有一个经理每个部门有一个经理, ,一个经理只能负责一个部

41、门一个经理只能负责一个部门. .同时需要注同时需要注意的是意的是, ,经理也是职工经理也是职工(5)(5)一名职工可能有多种一名职工可能有多种技能技能, ,某种技能可能被多名职工掌握某种技能可能被多名职工掌握根据上述业务特点根据上述业务特点, ,画出画出E-RE-R图图。将将E E-R-R图转换为关系模型。图转换为关系模型。部门部门工程项目工程项目承担承担1*实体及其联系图工作工作*技能技能掌握掌握*负责负责11职工职工隶属隶属n1概念模型概念模型E-RE-R图练习图练习1 1、学校中有若干系,每个系有若干班级和教研室,每个教研室有、学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教

42、员,其中有的教授和副教授每人各带若干研究生,每个若干教员,其中有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。学生选修每门课程后都有成绩选修。学生选修每门课程后都有成绩。系的属性系的属性:系编号,系名;系编号,系名;班级的属性班级的属性:班级编号,班级名;班级编号,班级名;教研室的属性教研室的属性:教研室编号,教研室名;教研室编号,教研室名;学生的属性学生的属性:学号,姓名,学历;学号,姓名,学历;课程的属性课程的属性:课程编号,课程名;课程编号,课程名;教员的属性教员的属性:职工号,姓名

43、,职称。职工号,姓名,职称。完整的实体-联系图系系班级班级学生学生课程课程有有属于属于包含包含选修选修教员教员教研室教研室组成组成nnmnn1n指导1n成绩概念模型概念模型E-RE-R图练习图练习2、设有一局部应用,包括三个实体设有一局部应用,包括三个实体“科室科室”,“医生医生”,“病病人人”,且有以下事实:每位医生属于且仅属于一个科室;每个,且有以下事实:每位医生属于且仅属于一个科室;每个科室可以聘用若干医生,对每个医生聘用时存有聘用期限和聘科室可以聘用若干医生,对每个医生聘用时存有聘用期限和聘用日期;一个病人可以由不同的医生为其诊断,每个医生可以用日期;一个病人可以由不同的医生为其诊断,

44、每个医生可以为若干病人诊治,每次诊断存有就诊日期。为若干病人诊治,每次诊断存有就诊日期。科室的属性科室的属性:科室代码,科室名称;科室代码,科室名称;医生的属性医生的属性:工号,姓名和职称;工号,姓名和职称;病人的属性病人的属性:姓名、年龄、姓名、年龄、工作单位。工作单位。设计设计E-RE-R图,注明属性和联系类型。图,注明属性和联系类型。将将E-RE-R图转换为关系模型。图转换为关系模型。科室科室医生医生聘用聘用工号工号姓名姓名职称职称科室名称科室名称科室代码科室代码1*病人病人完整的实体-联系图诊断诊断*病历号病历号年龄年龄工作单位工作单位*就诊日期就诊日期聘用期限聘用期限聘用日期聘用日期

45、姓名姓名概念模型概念模型E-RE-R图练习图练习3、请设计一个图书馆数据库,此数据库中对每个借阅者保存读请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者号,姓名,地址,性别,年龄,单位。对者记录,包括:读者号,姓名,地址,性别,年龄,单位。对每本书存有:书号,书名,作者,出版社。对每本被借出的书每本书存有:书号,书名,作者,出版社。对每本被借出的书存有读者号、借出日期和应还日期。存有读者号、借出日期和应还日期。 要求:用要求:用E-RE-R图画出此学校的概念模型,注明属性和联系类型。图画出此学校的概念模型,注明属性和联系类型。 将将E E-R-R图转换为关系模型。图转换为关系模型。读者读者书书借阅借阅书号书号书名书名作者作者地址地址姓名姓名读者号读者号*年龄年龄性别性别单位单位出版社出版社应还日期应还日期借出日期借出日期E-R图向关系模型的转换图向关系模型的转换例例按照上述规则,转换结果可以有多种,其中的一种如下按照上述规则,转换结果可以有多种,其中的一种如下( (蓝色字体为外键蓝色字体为外键) ) 学生(

温馨提示

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

评论

0/150

提交评论