书签 分享 收藏 举报 版权申诉 / 47
上传文档赚钱

类型数据库原理与应用(第二版)Chapter5课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3324826
  • 上传时间:2022-08-20
  • 格式:PPT
  • 页数:47
  • 大小:203KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据库原理与应用(第二版)Chapter5课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据库 原理 应用 第二 Chapter5 课件
    资源描述:

    1、第五章第五章数据库设计数据库设计5.1 数据库设计概述数据库设计概述 数据库设计主要考虑如下问题。数据库设计主要考虑如下问题。计算机软硬件环境计算机软硬件环境数据库管理系统的能力数据库管理系统的能力用户的操作要求与信息要求用户的操作要求与信息要求完整性和安全性约束完整性和安全性约束5.1.1 设计前的准备工作设计前的准备工作 数据库分析设计人员是数据库设计的核心数据库分析设计人员是数据库设计的核心人员,他们将自始至终参与数据库设计,人员,他们将自始至终参与数据库设计,他们的水平决定了数据库系统的质量。他们的水平决定了数据库系统的质量。用户在数据库设计中也是举足轻重的,他用户在数据库设计中也是举

    2、足轻重的,他们主要参加需求分析和数据库的运行维护,们主要参加需求分析和数据库的运行维护,他们的积极参与不但能加速数据库设计,他们的积极参与不但能加速数据库设计,而且也是决定数据库设计的质量的又一因而且也是决定数据库设计的质量的又一因素。素。程序员和操作员则在系统实施阶段参与进程序员和操作员则在系统实施阶段参与进来,分别负责编制程序和准备软硬件环境。来,分别负责编制程序和准备软硬件环境。5.1.2 5.1.2 设计方法的选择设计方法的选择1需求分析阶段需求分析阶段 2概念结构设计阶段概念结构设计阶段 3逻辑结构设计阶段逻辑结构设计阶段 4数据库物理设计阶段数据库物理设计阶段 5数据库实施阶段数据

    3、库实施阶段 6数据库运行和维护阶段数据库运行和维护阶段 数据库设计六个阶段数据库设计六个阶段:需求分析需求分析数据库运行和维护数据库运行和维护概念结构设计概念结构设计逻辑结构设计逻辑结构设计数据库物理设计数据库物理设计数据库实施数据库实施独立于数据独立于数据库管理系统库管理系统与数据库管理与数据库管理系统有关系统有关5.2 5.2 需求分析需求分析5.2.1 需求分析的任务需求分析的任务需求分析的重点是调查、收集与分析用户在数需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与据管理中的信息要求、处理要求、安全性与完整性要求。完整性要求。信息要求是指用户需要从数据库中

    4、获得信息的信息要求是指用户需要从数据库中获得信息的内容与性质。由用户的信息要求可以导出数内容与性质。由用户的信息要求可以导出数据要求,即在数据库中需要存储哪些数据。据要求,即在数据库中需要存储哪些数据。处理要求是指用户要求完成什么处理功能,对处理要求是指用户要求完成什么处理功能,对处理的响应时间有什么要求。处理的响应时间有什么要求。5.2.2 需求分析的方法需求分析的方法 调查与初步分析用户的需求通常需要四步:调查与初步分析用户的需求通常需要四步:调查组织机构情况;调查组织机构情况;抽象出每个职能部门各种应用的功能和所需抽象出每个职能部门各种应用的功能和所需信息的定义,并确定职能部门内各应用之

    5、间信息的定义,并确定职能部门内各应用之间的信息依赖关系和信息流通路径;的信息依赖关系和信息流通路径;协助用户明确对新系统的各种要求,包括信协助用户明确对新系统的各种要求,包括信息要求、处理要求、完全性与完整性要求;息要求、处理要求、完全性与完整性要求;对前面调查的结果进行初步分析,确定哪些对前面调查的结果进行初步分析,确定哪些功能由计算机完成或将来准备让计算机完成,功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。哪些活动由人工完成。常用的调查方法有以下几种常用的调查方法有以下几种:跟班作业跟班作业 开调查会开调查会 请专人介绍请专人介绍 询问询问 设计调查表,请用户填写设计调查表,

    6、请用户填写 查阅资料查阅资料 1.需求分析及其表示方法需求分析及其表示方法 分析和表达用户需求的方法主要包括自顶向下分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。它们均属于结构化分析和自底向上两类方法。它们均属于结构化分析(SA)方法。方法。需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求需求(A A)自顶向下的需求分析方法)自顶向下的需求分析方法 B B)自底向上的需求分析方法)自底向上的需求分析方法2.2.数据流图(数据流图(Data Flow Diagram,Data Flow Diagram,简称简称DFD DF

    7、D)数据流图是对系统的的一种逻辑抽象,独立于数据流图是对系统的的一种逻辑抽象,独立于系统的实现。数据流图表达了数据和处理过系统的实现。数据流图表达了数据和处理过程的关系。程的关系。数据流图的基本符号如下表所示:数据流图的基本符号如下表所示:符号符号含义含义数据源点或终点数据源点或终点 交换数据或处理交换数据或处理 数据存储数据存储 数据流数据流 或或或或或或以学校成绩管理需求为例,可画出如下数据流以学校成绩管理需求为例,可画出如下数据流图:图:学生学生选课单选课单允许考试允许考试课堂安排课堂安排教课书教课书教室安排教室安排教师档案教师档案课程介绍课程介绍考场安排考场安排试卷试卷成绩册成绩册教师

    8、教师选选课课上上课课考考试试3.3.数据字典(数据字典(Data DictionaryData Dictionary,简称,简称DDDD)数据字典是各类数据描述的集合,数据字典是各类数据描述的集合,通常包括数据项、通常包括数据项、数据结构,数据流和处理过程数据结构,数据流和处理过程4个部分。个部分。(1)(1)数据项数据项数据项是不可再分的数据单位。数据项是不可再分的数据单位。数据项描述数据项描述 数据项名,数据项含义说明,别名,数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系据项的逻辑关系 例例 5-1 5

    9、-1 在学生管理信息系统中,学生的学号在学生管理信息系统中,学生的学号就是一个数据项,它可以如下的进行数据描就是一个数据项,它可以如下的进行数据描述:述:数据项:学号数据项:学号含义说明:唯一能够标识学生的一个代号含义说明:唯一能够标识学生的一个代号别名:学生编号别名:学生编号类型:字符型类型:字符型长度:长度:8取值范畴:取值范畴:00000000-99999999取值含义:前取值含义:前4位代表年级,后位代表年级,后4位表示该学生的顺序位表示该学生的顺序号与其它数据项的逻辑关系号与其它数据项的逻辑关系(2)(2)数据结构数据结构数据结构反映了数据之间的组合关系。一个数数据结构反映了数据之间

    10、的组合关系。一个数据结构可以由若干个数据项组成,也可以由据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和若干个数据结构组成,或由若干个数据项和数据结构混合组成。数据结构混合组成。数据结构描述数据结构描述 数据结构名,含义说明,组成:数据结构名,含义说明,组成:数据项或数据结构数据项或数据结构 例例5-2 5-2 对于学生,因为表达学生概念时,需对于学生,因为表达学生概念时,需要表达很多属性,所以学生就是一个数据结要表达很多属性,所以学生就是一个数据结构。构。数据结构:学生数据结构:学生含义说明:是学生信息管理系统中主要的数含义说明:是学生信息管理系统中主要的数据结构

    11、,定义了有关学生档案的信息,并为据结构,定义了有关学生档案的信息,并为管理提供数据。管理提供数据。组成:学号、姓名、年龄、性别、政治面貌组成:学号、姓名、年龄、性别、政治面貌等。等。(3)(3)数据流数据流数据流是数据结构在系统内传输的路径。对数数据流是数据结构在系统内传输的路径。对数据流的描述通常包括以下内容:据流的描述通常包括以下内容:数据流描述数据流描述 数据流名,说明,数据流来源,数据流名,说明,数据流来源,数据流去向,组成:数据流去向,组成:数据结构数据结构(4)(4)数据存储数据存储数据存储是数据结构停留或保存的地方,是数数据存储是数据结构停留或保存的地方,是数据流的来源和去向之一

    12、。对数据存储的描述据流的来源和去向之一。对数据存储的描述通常包括以下内容:通常包括以下内容:数据存储描述数据存储描述=数据存储名,说明,编号,流数据存储名,说明,编号,流入的数据流,流出的数据流,组成:入的数据流,流出的数据流,组成:数据数据结构结构,数据量,方式,数据量,方式 数据存储:学生登记表数据存储:学生登记表说明:记录学生的基本情况说明:记录学生的基本情况流入数据流:手工录入,流入数据流:手工录入,流出数据流:为成绩管理等提供数据,流出数据流:为成绩管理等提供数据,组成:组成:数据量:每年数据量:每年2000条条存取方式:随机存取存取方式:随机存取 例例5-35-3 数据存储数据存储

    13、“学生登记表学生登记表”可描述如下:可描述如下:(5)(5)处理过程处理过程处理过程的具体处理逻辑一般用判定表或判定处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程树来描述。数据字典中只需要描述处理过程的说明性信息,通常包括以下内容:的说明性信息,通常包括以下内容:处理过程描述处理过程描述 处理过程名,说明,输入:处理过程名,说明,输入:数据流数据流,输出:,输出:数据流数据流,处理:,处理:简要说简要说明明处理过程:成绩管理处理过程:成绩管理说明:每学期进行学生成绩的管理工作说明:每学期进行学生成绩的管理工作输入:学生,课程名称,考试成绩输入:学生,课程名称,考

    14、试成绩输出:进行归档,并确定补考名单等。输出:进行归档,并确定补考名单等。处理:对学生的选课进行确定,并为其分配上课处理:对学生的选课进行确定,并为其分配上课的教室及教师,在期末安排考试时间及地点,考的教室及教师,在期末安排考试时间及地点,考试结束后填写成绩单,并确定补考名单等,根据试结束后填写成绩单,并确定补考名单等,根据不及格的课程数确定降级、退学等。不及格的课程数确定降级、退学等。例例5-4“成绩管理成绩管理”可简要描述如下:可简要描述如下:5.3 概念结构设计概念结构设计 将需求分析得到的用户需求抽象为信息结构即将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。概

    15、念模型的过程就是概念结构设计。在概念设计阶段一般都使用语义数据模型或概在概念设计阶段一般都使用语义数据模型或概念数据模型。这类数据模型具有如下特点。念数据模型。这类数据模型具有如下特点。(1)具有很强的表达能力,能够方便地表达各)具有很强的表达能力,能够方便地表达各种类型的数据、数据间的联系和各种约束。种类型的数据、数据间的联系和各种约束。(2)简单易懂,概念清晰,容易使用。)简单易懂,概念清晰,容易使用。(3)组成模型的概念少,概念定义严格,无多)组成模型的概念少,概念定义严格,无多义性,不同概念的语义不重叠。义性,不同概念的语义不重叠。(4)具有使用图形表示概念模式的能力。)具有使用图形表

    16、示概念模式的能力。5.3.15.3.1实体实体-联系模型联系模型1.1.实体和属性实体和属性实体联系模型简称实体联系模型简称E-RE-R(Entry-RelationEntry-Relation)模型。)模型。实体是实体是E-RE-R模型的基本对象。实体是对现实世模型的基本对象。实体是对现实世界各种事物的抽象,即将其数字化或符号化。界各种事物的抽象,即将其数字化或符号化。例例5-5 5-5 画出学生实体的实体描述图。画出学生实体的实体描述图。学号学号姓名姓名性别性别学生学生2.2.实体型、键属性和属性的值域实体型、键属性和属性的值域 实体型是一个具有相同属性的实体集合,由一个实实体型是一个具有

    17、相同属性的实体集合,由一个实体型的名字和一组属性来定义。实体型的定义称体型的名字和一组属性来定义。实体型的定义称为实体模式,描述了一组实体的公共结构。实体为实体模式,描述了一组实体的公共结构。实体型表示的实体集合中的任一实体称为该实体型的型表示的实体集合中的任一实体称为该实体型的实例,简称实体。在任意时刻,一个实体型的所实例,简称实体。在任意时刻,一个实体型的所有实体的集合称为该实体型的外延。同一个实体有实体的集合称为该实体型的外延。同一个实体型的不同实体是现实世界中不同的对象。型的不同实体是现实世界中不同的对象。在在E-RE-R模型中每个实体型一般具有一个或多个属性模型中每个实体型一般具有一

    18、个或多个属性组成的键,用来区别不同的实体。对于同一实体组成的键,用来区别不同的实体。对于同一实体型的不同实体,键的值必须相异。型的不同实体,键的值必须相异。实体型的每个简单属性都具有一个值域,说明这个属性实体型的每个简单属性都具有一个值域,说明这个属性的可能取值范围。的可能取值范围。3.3.数据库实例数据库实例4.4.实体间的联系实体间的联系一个数据库通常都包含很多实体型。不同实体一个数据库通常都包含很多实体型。不同实体型的实体之间可能具有某种联系。我们称这型的实体之间可能具有某种联系。我们称这种联系为实体间的联系(种联系为实体间的联系(Entry RelationEntry Relation

    19、)。)。一个联系型的实体对应约束规定了该联系型所一个联系型的实体对应约束规定了该联系型所关联的实体间的对应关系。实体对应约束包关联的实体间的对应关系。实体对应约束包括三种,分别为一对一约束括三种,分别为一对一约束(1:1)、一对多约、一对多约束束(1:N)和多对多约束和多对多约束(M:N)。5.5.实体联系图实体联系图 5.3.2 概念结构设计的方法与步骤概念结构设计的方法与步骤 设计概念结构通常有三类方法:设计概念结构通常有三类方法:自顶向下。即首先定义全局概念结构的框架,自顶向下。即首先定义全局概念结构的框架,然后逐步细化。然后逐步细化。自底向上。即首先定义各局部应用的概念结自底向上。即首

    20、先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构,然后将它们集成起来,得到全局概念结构。构。混合策略。即将自项向下和自底向上相结合,混合策略。即将自项向下和自底向上相结合,用自项向下策略设计一个全局概念结构的框用自项向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计架,以它为骨架集成由自底向上策略中设计的各局部概念结构。的各局部概念结构。自底向上设计方法自底向上设计方法通常分为两步:数据抽象与通常分为两步:数据抽象与局部视图设计;局部视图的集成局部视图设计;局部视图的集成。数据抽象与局部视图设计:数据抽象与局部视图设计:根据需求分析的根据需求分析的结果(数据

    21、流图、数据字典等)对现实世界结果(数据流图、数据字典等)对现实世界的数据进行抽象,设计各个局部视图即分的数据进行抽象,设计各个局部视图即分E-R图。图。1.1.视图的集成视图的集成各个局部视图建立好后,还需要对它们进行合各个局部视图建立好后,还需要对它们进行合并,集成为一个整体的数据概念结构,即总并,集成为一个整体的数据概念结构,即总E-R图。合理消除各分图。合理消除各分E-R图的冲突是合并图的冲突是合并分分E-R图的主要工作与关键所在。图的主要工作与关键所在。各分各分E-R图之间的冲突主要有三类:图之间的冲突主要有三类:属性冲突属性冲突属性域冲突属性域冲突 属性取值单位冲突属性取值单位冲突命

    22、名冲突命名冲突同名异义同名异义 异名同义异名同义 结构冲突结构冲突同一对象在不同应用中具有不同的抽象同一对象在不同应用中具有不同的抽象 同一实体在不同局部视图中所包含的属性不完全同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同相同,或者属性的排列次序不完全相同 实体之间的联系在不同局部视图中呈现不同的类实体之间的联系在不同局部视图中呈现不同的类型型 5.4 5.4 逻辑数据库设计逻辑数据库设计5.4.1 5.4.1 关系数据库的逻辑设计关系数据库的逻辑设计逻辑数据库设计的任务是把概念设计阶段产生逻辑数据库设计的任务是把概念设计阶段产生的概念数据库模式变换为逻辑数据库

    23、模式。的概念数据库模式变换为逻辑数据库模式。即把概念设计阶段设计好的基本即把概念设计阶段设计好的基本E-R图转换为图转换为选用的选用的DBMS产品所支持的数据模型相符合产品所支持的数据模型相符合的逻辑结构。的逻辑结构。1.1.逻辑设计过程概述逻辑设计过程概述逻辑数据库设计的步骤:逻辑数据库设计的步骤:(1 1)形成初始关系数据库模式;)形成初始关系数据库模式;(2 2)关系模式规范化;)关系模式规范化;(3 3)关系模式优化;)关系模式优化;(4 4)定义关系上的完整性和安全性约束;)定义关系上的完整性和安全性约束;(5 5)子模式定义;)子模式定义;(6 6)性能估计。)性能估计。是否需要修

    24、正是否需要修正进入物理设计阶段进入物理设计阶段处理要求处理要求关系模式规范化关系模式规范化模式评价模式评价ER模式模式DBMS特性特性从从ER模式导出初始数据库模式模式导出初始数据库模式否否是是以以DBMS语法描述语法描述模式修正模式修正2.2.设计用户子模式设计用户子模式 将概念模型转换为全局逻辑结构后,还应该根将概念模型转换为全局逻辑结构后,还应该根据局部应用需求,结合具体据局部应用需求,结合具体DBMS的特点,的特点,设计用户的子模式。在定义用户子模式时设计用户的子模式。在定义用户子模式时 应应注意以下几点:注意以下几点:(1 1)使用更符合用户习惯的别名。例如可以在)使用更符合用户习惯

    25、的别名。例如可以在设计用户视图时重新定义某些属性名,使其设计用户视图时重新定义某些属性名,使其与用户习惯一致,方便使用。与用户习惯一致,方便使用。(2 2)可以对不同的级别的用户定义不同的视图,)可以对不同的级别的用户定义不同的视图,这样可以防止用户非法访问本来不允许他们这样可以防止用户非法访问本来不允许他们查询的数据,以保证系统的安全性。查询的数据,以保证系统的安全性。(3 3)简化用户对系统的使用)简化用户对系统的使用3.3.存储模式设计存储模式设计关系型关系型DBMSDBMS提供的有关存储模式定义的功能有:提供的有关存储模式定义的功能有:索引定义、聚集定义、数据段定义等。索引定义、聚集定

    26、义、数据段定义等。4.4.系统编码设计系统编码设计在系统设计工作过程中,对所有具有编码的数在系统设计工作过程中,对所有具有编码的数据项都应强制遵从编码规则据项都应强制遵从编码规则。5.5.应用软件设计应用软件设计(1)(1)设计功能模块结构设计功能模块结构(2)(2)存储过程和数据库触发器设计存储过程和数据库触发器设计(3)(3)补充数据字典补充数据字典(4)(4)菜单设计菜单设计(5)(5)设计用户界面设计用户界面(6)(6)生成交叉指引表生成交叉指引表5.4.2 E-R5.4.2 E-R图向关系模型的转换图向关系模型的转换将将E-R图转换为关系模型实际上就是要将实体、图转换为关系模型实际上

    27、就是要将实体、实体的属性和实体之间的联系转换为关系模实体的属性和实体之间的联系转换为关系模式,这种转换遵循如下原则:式,这种转换遵循如下原则:(1)(1)一个实体型转换为一个关系模式,实体的一个实体型转换为一个关系模式,实体的属性就是关系模式的属性,实体的键即为关属性就是关系模式的属性,实体的键即为关系模式的键。系模式的键。(2)对于实体间联系,就要视对于实体间联系,就要视1:1,1:N,M:N三种不同情况做不同的处理:三种不同情况做不同的处理:一个一个1 1:1 1联系可以转换为一个独立的关系模式,也联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。可以与任意一端对应的关

    28、系模式合并。若实体间的联系是若实体间的联系是1 1:N N的,则可以与的,则可以与N N端对应的关端对应的关系模式合并,并在系模式合并,并在N N端实体型转换的关系模式中加端实体型转换的关系模式中加入入1 1端实体型转换成的关系模式的键和联系的属性。端实体型转换成的关系模式的键和联系的属性。若将若将1 1:N N联系转换为一个独立的关系模式,则与该联系转换为一个独立的关系模式,则与该联系相连的各实体转换成的关系模式的键以及联系联系相连的各实体转换成的关系模式的键以及联系本身的属性均转换为关系的属性,而关系的键为本身的属性均转换为关系的属性,而关系的键为N N端实体对应的关系模式的键。端实体对应

    29、的关系模式的键。若实体间的联系是若实体间的联系是M:N的,则将该联系转换为一的,则将该联系转换为一个独立的关系模式,其属性为两端实体类型的键加个独立的关系模式,其属性为两端实体类型的键加上联系类型的属性,而关系的键为两端实体转换成上联系类型的属性,而关系的键为两端实体转换成的关系模式键的组合。的关系模式键的组合。5.4.3 数据库设计中关系规范化的应用数据库设计中关系规范化的应用理论上的关系规范化,在实际应用中并不完全理论上的关系规范化,在实际应用中并不完全采用,其主要原因在于:采用,其主要原因在于:(1)(1)找出所有数据依赖不是一件简单的事,如果漏掉或找出所有数据依赖不是一件简单的事,如果

    30、漏掉或错误地确定了一些数据依赖关系,按上节的方法进行错误地确定了一些数据依赖关系,按上节的方法进行规范化,不能得到一个在理论上认为好的数据库设计。规范化,不能得到一个在理论上认为好的数据库设计。(2)(2)即使我们能正确地找出所有的数据依赖关系,采用即使我们能正确地找出所有的数据依赖关系,采用机械地分解模式的方法,而完全不考虑关系的具体大机械地分解模式的方法,而完全不考虑关系的具体大小,以及数据的更新状况,全部规范到同样的程度小,以及数据的更新状况,全部规范到同样的程度(比如(比如3NF3NF),这也是不适当的。),这也是不适当的。(3)(3)数据库设计一般采用先得到数据库设计一般采用先得到E

    31、-RE-R模型,再由模型,再由E-RE-R图转图转换得到关系数据库模式的方法。从换得到关系数据库模式的方法。从E-RE-R图转换成的关图转换成的关系模式,较小(包含的属性较少),为了以后数据库系模式,较小(包含的属性较少),为了以后数据库查询的方便、更多的情况是需要合并关系模式,而不查询的方便、更多的情况是需要合并关系模式,而不是分解关系模式。是分解关系模式。关系规范化的关系规范化的 实际意义在于,当设计实际意义在于,当设计E-R模型时,应仔模型时,应仔细分析数据间存在的数据依赖,这样能使我们最后从细分析数据间存在的数据依赖,这样能使我们最后从E-R图得到的关系数据库模式基本达到图得到的关系数

    32、据库模式基本达到3NF的规范程的规范程度。因此,要得到一个好的数据库设计,要根据具体度。因此,要得到一个好的数据库设计,要根据具体情况对关系模式进行处理,既可能要合并关系模式,情况对关系模式进行处理,既可能要合并关系模式,也可能要分解关系模式。也可能要分解关系模式。5.5 5.5 物理设计阶段物理设计阶段对于给定的基本数据模型选取一个最适合应用对于给定的基本数据模型选取一个最适合应用环境的物理结构的过程,称为物理设计。环境的物理结构的过程,称为物理设计。1.1.数据库物理设计的内容数据库物理设计的内容(1)存储记录结构设计。)存储记录结构设计。(2)确定数据存放位置。)确定数据存放位置。(3)

    33、存取方法的设计。)存取方法的设计。(4)完整性和安全性考虑。)完整性和安全性考虑。(5)程序设计。)程序设计。2.2.数据库的实现数据库的实现 根据逻辑设计和物理设计的结果,在计算机系根据逻辑设计和物理设计的结果,在计算机系统上建立起实际数据库结构、装入数据、测统上建立起实际数据库结构、装入数据、测试和试运行的过程称为数据库的实现阶段。试和试运行的过程称为数据库的实现阶段。主要有三个方面的工作:主要有三个方面的工作:(1)建立实际数据库结构。)建立实际数据库结构。(2)装入试验数据对应用程序进行调试。)装入试验数据对应用程序进行调试。(3)装入实际数据,进入试运行状态。测量系)装入实际数据,进

    34、入试运行状态。测量系统的性能指标,是否符合设计目标。统的性能指标,是否符合设计目标。3 3 数据库的运行和维护数据库的运行和维护数据库系统正式运行,标志着数据库设计与应数据库系统正式运行,标志着数据库设计与应用开发工作的结束和维护阶段的开始。运行用开发工作的结束和维护阶段的开始。运行维护阶段的主要任务有四项:维护阶段的主要任务有四项:(1)维护数据库的安全性与完整性。)维护数据库的安全性与完整性。(2)监测并改善数据库的运行性性能。)监测并改善数据库的运行性性能。(3)根据用户要求对数据库现有的功能进行调)根据用户要求对数据库现有的功能进行调整和扩充。整和扩充。(4)及时发现并改正运行中的系统

    35、错误或不足。)及时发现并改正运行中的系统错误或不足。5.6 数据库设计实例数据库设计实例5.6.1 5.6.1 概念结构设计概念结构设计 某公司的业务特点主要包括以下几个方面的内容:某公司的业务特点主要包括以下几个方面的内容:(1)公司下设几个部门,如技术部、财务部、工程部;公司下设几个部门,如技术部、财务部、工程部;(2)每个部门承担多个工程项目,每个工程项目属于一个每个部门承担多个工程项目,每个工程项目属于一个部门;部门;(3)每个部门有多个职工,每个职工只属于一个部门;每个部门有多个职工,每个职工只属于一个部门;(4)一名职工可能参与多个工程项目,每个工程允许多名一名职工可能参与多个工程

    36、项目,每个工程允许多名职工参与;职工参与;(5)每个部门有一个经理,一个经理只能负责一个部门。每个部门有一个经理,一个经理只能负责一个部门。同时需要注意的是,经理也是职工;同时需要注意的是,经理也是职工;(6)一名职工可能有多名亲属,也可能没有亲属;一名职工可能有多名亲属,也可能没有亲属;(7)一名职工可能有多种技能,某种技能可能被多名职工一名职工可能有多种技能,某种技能可能被多名职工掌握掌握。根据上述业务特点,可以定义五个实体:部门、根据上述业务特点,可以定义五个实体:部门、职工、亲属、工程、技能,它们的实体职工、亲属、工程、技能,它们的实体-属性属性图如下所示:图如下所示:部门部门编号编号

    37、经理经理电话电话部门部门名称名称部门部门技能技能编号编号技能技能名称名称技能技能职工职工编号编号性别性别姓名姓名职工职工亲属亲属姓名姓名工程工程编号编号经费经费预算预算部门部门编号编号工程工程名称名称工程工程出生出生年月年月亲属亲属关系关系亲属亲属部门部门工程工程承承担担1 1n n部门部门职工职工聘聘用用1 1n n职工职工工程工程参参加加m mn n部门部门职工职工经经理理1 11 1职工职工亲属亲属有有1 1n n职工职工技能技能具具有有m mn n局部局部E-R图:图:亲属亲属有有职工职工具具有有参参加加技能技能部门部门聘聘用用承承担担工程工程经经理理1nn1m1nnmn11全局全局E

    38、-R图图5.6.2 逻辑结构设计逻辑结构设计 将将E-R图转换成如下关系模型:图转换成如下关系模型:名称名称属性属性主键主键外部键外部键部门部门部门编号、部门名称、电话、部门编号、部门名称、电话、职工编号职工编号(领导领导)部门编号部门编号职工编号职工编号工程工程工程编号、工程名称,部门编工程编号、工程名称,部门编号,经费预算号,经费预算工程编号工程编号部门编号部门编号职工职工职工编号、姓名、性别、出生职工编号、姓名、性别、出生年月、部门编号年月、部门编号职工编号职工编号部门编号部门编号技能技能技能编号、技能名称技能编号、技能名称技能编号技能编号人才人才职工编号、技能编号、从事年职工编号、技能

    39、编号、从事年限限职工编号、技能编职工编号、技能编号号职工编号、技职工编号、技能编号能编号亲属亲属职工编号、亲属姓名、亲属关职工编号、亲属姓名、亲属关系系职工编号、亲属姓职工编号、亲属姓名名职工编号职工编号分配分配工程编号、职工编号、工时工程编号、职工编号、工时工程编号、职工编工程编号、职工编号号工程编号、职工程编号、职工编号工编号5.6.3 物理结构设计物理结构设计 根据逻辑结构设计结果,定义数据表创建语句。根据逻辑结构设计结果,定义数据表创建语句。例如:例如:CREATE TABLE CREATE TABLE 部门部门(部门编号部门编号 INT NOT NULL,INT NOT NULL,C

    40、ONSTRAINT PK_ CONSTRAINT PK_部门部门 PRIMARY KEY(PRIMARY KEY(部门编号部门编号),),部门名称部门名称 CHAR(32)NOT NULL,CHAR(32)NOT NULL,电话电话 CHAR(16),CHAR(16),职工编号职工编号 INT,INT,CONSTRAINT FK_ CONSTRAINT FK_部门部门 FOREIGN KEY(FOREIGN KEY(职工编号职工编号)REFERENCE)REFERENCE 职工职工););CREATE TABLE CREATE TABLE 职工职工(职工编号职工编号 INT NOT NULL,

    41、INT NOT NULL,CONSTRAINT PK_ CONSTRAINT PK_职工职工 PRIMARY KEY(PRIMARY KEY(职工编号职工编号),),姓名姓名 CHAR(10)NOT NULL,CHAR(10)NOT NULL,性别性别 CHAR(1),CHAR(1),出生年月出生年月 CHAR(8),CHAR(8),部门编号部门编号 INT,INT,CONSTRAINT FK_ CONSTRAINT FK_职工职工FOREIGN KEY(FOREIGN KEY(部门编号部门编号)REFERENCE)REFERENCE 部门部门););CREATE TABLE CREATE T

    42、ABLE 人才人才(职工编号职工编号 INT NOT NULL,INT NOT NULL,技能编号技能编号 INT NOT NULL,INT NOT NULL,CONSTRAINT PK_ CONSTRAINT PK_人才人才PRIMARY KEY(PRIMARY KEY(技能编号技能编号,职工编号职工编号),),CONSTRAINT FK_ CONSTRAINT FK_人才人才1 FOREIGN KEY(1 FOREIGN KEY(职工编号职工编号)REFERENCE)REFERENCE 职工职工,CONSTRAINT FK_ CONSTRAINT FK_人才人才2 FOREIGN KEY(

    43、2 FOREIGN KEY(技能编号技能编号)REFERENCE)REFERENCE 技能技能,从事年限从事年限 INTINT););CREATE TABLE CREATE TABLE 亲属亲属(职工编号职工编号 INT NOT NULL,INT NOT NULL,亲属姓名亲属姓名 CHAR(10)NOT NULL,CHAR(10)NOT NULL,亲属关系亲属关系 CHAR(10),CHAR(10),CONSTRAINT PK_ CONSTRAINT PK_亲属亲属 RIMARY KEY(RIMARY KEY(亲属姓名亲属姓名,职工编号职工编号),),CONSTRAINT FK_ CONSTRAINT FK_人才人才1 FOREIGN KEY(1 FOREIGN KEY(职工编号职工编号)REFERENCE)REFERENCE 职工职工););

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据库原理与应用(第二版)Chapter5课件.ppt
    链接地址:https://www.163wenku.com/p-3324826.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库