数据库设计课件第3章 数据库设计_第1页
数据库设计课件第3章 数据库设计_第2页
数据库设计课件第3章 数据库设计_第3页
数据库设计课件第3章 数据库设计_第4页
数据库设计课件第3章 数据库设计_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

在数据库系统中,数据库是最基本、最重要的部分。数据库性能的高低,决定了整个数据库应用系统的性能。一个好的数据库需要通过严格的设计,才能满足各方面对数据的需要。数据库的设计和开发是一项庞大而复杂的工程。数据库设计人员要具备的知识:(1)数据库基本理论(2)数据库设计技术(3)程序开发的实际经验(4)软件工程的原理和方法第3章数据库设计本章主要内容:1、数据库设计的基本概念2、数据库设计的6个阶段**(1)需求分析(2)概念结构设计(3)逻辑结构设计(4)数据库物理设计、数据库实施、数据库的运行和维护第3章数据库设计数据库设计是根据用户需求设计数据库结构的过程。具体一点讲,数据库设计是对于给定的应用环境,在关系数据库理论的指导下,构造最优(最合理、最规范)的数据库模式,在数据库管理系统(如SQLServer)上建立数据库及其应用系统(如ASP.NET网站、JAVA程序等),使之能有效地存储数据,满足用户的各种需求的过程。3.1数据库设计概述数据库设计方法有多种,按照规范设计的方法,数据库设计可分为六个阶段:需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、数据库运行和维护。

3.1数据库设计概述需求分析是设计数据库的起点,就是要分析用户的要求。本节包含三个知识点:(1)需求分析阶段的重要性(2)需求分析的任务(3)需求分析的方法3.2需求分析需求分析阶段的重要性*:需求分析就是数据库设计人员,通过仔细地调查和向用户详细地咨询,掌握用户的需求,理解用户的需求。需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。可以说在一个大型数据库系统的开发中,它的作用要远远大于其它各个阶段。

3.2需求分析明确需求分析的任务:通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,并在此基础上确定新系统的功能。注意:(1)一定要让用户解释其需求,而不是数据库设计人员自己凭空设计需求。(2)新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库。

3.2.1需求分析的任务

需求分析调查的重点是“数据”和“处理”(1)信息(数据)要求:调查用户的信息要求,确定在数据库中需要存储哪些数据。(2)处理要求:

指用户要完成什么处理功能,处理时间要求及处理方式。(3)安全性与完整性要求安全性要求是指对数据库的用户、角色、权限、加密方法等安全保密措施的要求。完整性要求是指对数据取值范围、数据之间各种联系的要求等等。

需求分析的任务1.调查用户需求的具体步骤(1)调查组织机构情况,包括了解该组织的部门组成情况、各部门的职责等,为分析信息流程做准备。(2)调查各部门的业务活动情况,包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么,这是调查的重点。3.2.2需求分析的方法(3)在熟悉业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求、处理要求、完全性与完整性要求,这是调查的又一个重点。(4)确定新系统的边界,对前面调查的结果进行初步分析,确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。需求分析的方法2.常用的调查方法

(1)跟班作业。通过亲身参加业务工作来了解业务活动的情况。(2)开座谈会。通过与用户座谈来了解业务活动情况及用户需求。(3)询问或请专人介绍。一般应包括领导、管理人员、操作员等。(4)设计调查表请用户填写需求。这种方法易于用户接受。(5)查阅记录。查阅与原系统有关的数据记录。实际应用中,具体问题具体分析,但必须有用户的参与。需求分析的方法1、给出你对数据库设计基本概念的理解。2、数据库设计方法有多种,按照规范设计的方法,数据库设计可分为六个阶段,包括?3、通俗地解释你对需求分析重要性的理解。4、需求分析调查的重点是“数据”和“处理”,主要包括哪三方面的要求。5、如果你做数据库软件开发,你可能会对哪种需求分析调查方法更感兴趣,说明理由。数据库技术概述及需求分析课后问题:概念结构设计阶段不是直接将需求分析得到的数据转换为DBMS能处理的数据库模式,而是将需求分析得到的用户需求抽象为反映用户观点的概念模型(E-R模型)。本节包含的知识点:(1)概念结构的模型的特点(2)概念结构设计的方法(3)概念结构设计的步骤3.3概念结构设计**(1)有丰富的语义表达能力:表达用户的各种需求,反映数据及其联系。(2)易于交流和理解:系统分析师、数据库设计人员和用户交流、理解。(3)易于修改:灵活性、反映用户需求和环境的变化。(4)易于向各种数据模型转换。概念结构的模型的特点(1)自顶向下法:建立初步框架,即全局E-R模型,然后再逐步细化(2)自底向上法。先得到局部E-R模型,再进一步综合成全局E-R模型(3)逐步扩张法。先定义最重要的核心概念E-R模型,然后向外扩充(4)混合策略:(1)(2)混合使用其中最常用的策略是自底向上法。3.3.1概念结构设计的方法1.设计局部E-R模型的步骤:(1)确定局部E-R图描述的范围两条原则:独立性原则:一个范围内的应用功能具有独立性与完整性,与其他范围内的应用有最少的联系。规模适度原则:局部E-R图规模应适度,一般以6个左右实体为宜。3.3.2概念结构设计的步骤(2)确定局部E-R图的实体根据需求分析说明书,将用户需求中涉及的数据对象进行归类,指明是实体、联系还是属性。(3)定义实体的属性(4)定义实体间的联系一对一、一对多、多对多三种。概念结构设计的步骤2.局部E-R模型的集成将各个局部E-R模型去掉不一致和重复的地方,合并为全局视图,即局部E-R模型的集成。一般有两种集成方式:(1)多个分E-R图一次集成;(2)逐步集成*:用累加的方式一次集成两个分E-R图。概念结构设计的步骤集成分为两个阶段:第一步是合并,以消除各局部E-R图之间的不一致(冲突)情况,生成初步的E-R图;第二步是优化,消除不必要的数据冗余(多余的数据或联系),生成全局E-R图。

概念结构设计的步骤教学信息数据库系统E-R图(学生和教师,学生和学院为多余的联系;平均成绩为多余的属性)概念结构设计的步骤1NNM课程学生选修姓名性别年龄课程号课程名学分成绩学号班级属于班主任班级名教师教师号姓名性别教授N11学院地址学院名隶属M属于1N质量评价平均成绩1、给出你所理解的概念结构设计的作用。2、你认为为什么最常用的概念结构设计方法是自底向上法?3、为什么在生成全局E-R图时,要消除不必要的数据冗余?4、对于本节知识,你还存在哪些困惑。概念结构设计课后问题:数据库概念设计阶段得到的数据模式转换成某个具体的DBMS所支持的数据模式,并建立相应的外模式,这是数据库逻辑设计的任务,是数据库结构设计的重要阶段。逻辑结构设计一般要分为三步*:将E-R图转化为关系数据模型关系模式的优化设计用户外模式(子模式)3.4逻辑结构设计将E-R图转化为关系数据模型实际上是要将实体、属性和实体之间的联系转化为关系模式。转化过程中要遵循的原则:1.实体的转换*一个实体转化为一个关系模式。实体的属性就是关系的属性。实体的主码就是关系的主码。

3.4.1将E-R图转化为关系数据模型例:将如图所示的学生实体,转换为关系模式。对应的关系模式为:学生(学号,姓名,出生日期,所在系,年级,平均成绩)

将E-R图转化为关系数据模型2.联系的转换**(1)两实体间1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。②与某一端对应的关系模式合并(常用)合并后关系的属性包括自身关系的属性和另一关系的主码及联系本身的属性;合并后关系的主码不变。将E-R图转化为关系数据模型例:将如图所示的E-R图,转换为关系模式。1班级班号年龄班主任班长班长-班级任期姓名入学时间学号系别性别1将E-R图转化为关系数据模型转换成如下关系模式:班级(班号,系别,班主任,入学时间班长(学号,姓名,性别,年龄)或:班级(班号,系别,班主任,入学时间)班长(学号,姓名,性别,年龄,班长学号,班长任期),班号,任期))将E-R图转化为关系数据模型(2)两实体间1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。②与n端对应的关系模式合并(常用)合并后关系的属性:在n端关系中加入1端关系的主码和联系本身的属性。合并后关系的主码不变。将E-R图转化为关系数据模型例:将如图所示的E-R图转换为合适的关系模式。将E-R图转化为关系数据模型对应的关系模式如下:系(系号,系名,系主任)教师(教师号,教师名,年龄,职称,系号,入系日期)将E-R图转化为关系数据模型(4)两实体间m:n联系**:必须为联系产生一个新的关系。该关系中至少包含被它所联系的双方实体的主码,若联系有属性,也要并入该关系中。新关系的主码可以为双方实体的主码的组合,也可以另外设置一个属性作为主码。将E-R图转化为关系数据模型例:将如图所示的E-R图转换成对应的关系模式。NM职工职务年龄职工号项目参加起始日期项目名姓名项目号薪酬性别鉴定日期将E-R图转化为关系数据模型关系模式如下:职工(职工号,姓名,性别,年龄,职务)项目(项目号,名称,起始日期,鉴定日期)参加(职工号,项目号,薪酬)将E-R图转化为关系数据模型为了进一步提高数据库应用系统的性能,还应努力减少关系模式中存在的各种异常,改善完整性、一致性和存储效率。(1)规范化:一般到第三范式。(2)调整结构,提高使用效率的优化:合并与分解3.4.2关系模式的优化关系模式的优化例如,单位职工及项目管理的关系模式设计如下:

职工(职工号,姓名,性别,年龄,职务)项目(项目号,名称,起始日期,鉴定日期)参加(职工号,项目号,薪酬)(1)经分析3个关系模式属于第三范式。(2)经分析不需要合并或分解。(3)设计每一个关系的表结构。例:职工表的表结构设计属性名类型宽度取值范围主键职工号char6数字字符是姓名char10性别char2(男,女)年龄int18-60职务char10关系模式的优化外模式也叫子模式,是用户可直接访问的数据模式,是从模式中导出的部分数据的逻辑结构。根据用户的具体需求进行设计

(详见视图和索引的有关章节内容)。外模式的优点:为应用程序提供了逻辑独立性;可以更好地适应不同用户对数据的需求;为用户划定了访问数据的范围,有利于数据的保密等。3.4.3设计用户外模式图书信息出版社名称字符型20书名字符型30作者姓名字符型20出版日期日期型

作者著书信息作者姓名字符型20书名字符型30出版社出书类型出版社名称字符型20书名字符型30类型字符型1

索引文件索引文件索引文件数据文件数据文件数据文件出版社作品作者

作者

作品

出版社

作者编号字符型5书号字符型6出版社编号字符型5

作者姓名字符型20书名字符型30出版社名称字符型20

通信地址字符型50类型字符型1城市字符型10

邮编字符型6价格货币

电话字符型11出版日期日期型

外模式模式内模式设计用户外模式(以图书出版公司数据库为例)1、将E-R图转化为关系数据模型的转换原则在数据库设计中起到了什么作用?给出你的理解。2、在E-R模型中,如果有5个不同的实体型,2个1:m联系,2个m:n联系,根据E-R模型转换为关系模型的规则,转换后关系的数目至少为()。3、举例说明:关系模式设计好后,通过合并或分解调整结构,可以提高数据的使用效率。4、给出你对外模式的优点:为用户划定了访问数据的范围,有利于数据的保密的理解。5、对于本节知识,你还有哪些困惑。逻辑结构设计课后问题:数据库最终要存储在物理设备上。将逻辑设计中产生的数据库逻辑模型结合指定的DBMS,设计出最适合应用环境的物理结构的过程,称为数据库的物理结构设计。为了设计数据库的物理结构,设计人员必须充分了解所用DBMS的内部特征;充分了解数据系统的实际应用环境,特别是数据应用处理的频率和响应时间的要求;充分了解外存储设备的特性。3.5物理结构设计数据库的物理结构设计分为两个步骤:(1)确定数据库的物理结构。(2)对所设计的物理结构进行评价。

物理结构设计数据库物理设计内容包括:(1)确定数据的存储结构确定数据库存储结构时要综合考虑存取时间、存储空间利用率和维护代价三方面的因素。这三个方面常常是相互矛盾的,例如消除一切冗余数据虽然能够节约存储空间,但往往会导致检索代价的增加,因此必须进行权衡,选择一个折中方案。3.5.1确定数据库的物理结构(2)设计数据的存取路径DBMS常用存取方法有:索引方法(比如采用B+树结构的索引方法),聚簇(CLUSTER)方法和HASH(哈希)方法。(3)确定数据的存放位置(经常存取部分和存取频率较低部分分磁盘存放、数据表和索引分磁盘存放、数据和日志分磁盘存放等等)。确定数据库的物理结构(4)确定系统配置DBMS产品一般都提供了一些存储分配参数,供设计人员和DBA对数据库进行物理优化。初始情况下,系统都为这些变量赋予了合理的缺省值。但是这些值不一定适合每一种应用环境。

对系统配置的变量:例如,同时使用数据库的用户数,同时打开的数据库对象数,缓冲区分配参数,物理块装填因子,数据库的大小,锁的数目等。在物理设计时应根据应用环境确定这些参数值,以使系统性能最佳。确定数据库的物理结构数据库物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,其结果可以产生多种方案,数据库设计人员必须对这些方案进行细致的评价,从中选择一个较优的方案作为数据库的物理结构。

3.5.2评价物理结构1、数据库物理设计内容包括?2、在数据库设计中,“在哪些表、在哪些属性上建什么样的索引”,这一内容为什么属于物理结构设计阶段,给出你的理解。3、于本节知识,你还有哪些困惑。物理结构设计课后问题:1数据库实施根据逻辑和物理设计的结果,在计算机上建立起实际的数据库结构,并装入数据,进行试运行和评价的过程,叫做数据库的实施(或实现)。

3.6数据库实施和运行、维护2数据库的运行与维护

数据库试运行结果符合设计目标后,数据库就可以真正投入运行了。数据库投入运行标着开发任务的基本完成和维护工作的开始。维护工作包括:数据库的转储和恢复;数据库的安全性和完整性控制;数据库性能的监督、分析和改造;数据库的重组织和重构造。数据库实施和运行、维护图书借阅管理系统设计1、系统需求分析与用户协商,了解用户的需求,需要哪些数据和操作(主要是查询),确定系统中应包含以下实体:书籍、员工

温馨提示

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

评论

0/150

提交评论