数据库与软件开发基础第八章.ppt
《数据库与软件开发基础第八章.ppt》由会员分享,可在线阅读,更多相关《数据库与软件开发基础第八章.ppt(69页珍藏版)》请在三一办公上搜索。
1、数据库设计方法 需求分析 概念结构设计 逻辑结构设计 数据库的物理设计 数据库的实施与维护,第八章 数据库设计,1,数据库设计是要在一个给定的应用环境中,通过合理的逻辑设计和有效的物理设计,构造较 优的数据库模式,建立数据库及其应用系统,满 足用户的各种信息需求。是数据库在应用领域的主要研究课题,8.1 数据库设计方法,2,目前的数据库设计方法:规范化设计法 按软件工程思想,将设计分为若干阶段,明确规定各阶段的任务,自顶向下逐步求精,数据库设计任务:,8.1 数据库设计方法,3,设计步骤:,8.1 数据库设计方法,调查、收集 信息需求,处理需求 安全需求,性能需求 完整性需求 分析、整理出 需
2、求说明书,用概念数据模型来表示数据及其联系,为进一步的设计提供依据,产生概念数据模型:ER图,将概念数据模型表示的数据模式转换成用所选DBMS支持的数据模型表示的符合规范的逻辑模式、外模式设计数据库的逻辑结构,设计数据库的内模式,包括:文件结构、存取路径、索引和存储空间的分配等,与DBMS、OS、硬件有关。,用所选的DBMS提供的DDL定义数据模式装入数据用合适的开发工具编制应用程序联机调试并试运行进行性能分析,若不符合要求,则调整相关部分的设计或修改应用程序,直至能高效、稳定、正确地运行,4,8.1 数据库设计方法,需求分析,概念结构设计,逻辑结构设计,物理结构设计,设计阶段与数据库模式的对
3、应关系:,5,8.2 需求分析,明确要“做什么?”,而不考虑“怎么做?”,6,二、需求分析的重点 数据、处理 用户的信息要求 用户用到的数据及其结构,确定数据库中 应存储哪些数据 用户的处理要求 要求完成的处理功能,响应时间,涉及的 数据,处理方式等 对数据的安全性、完整性的要求,8.2 需求分析,7,三、步骤,8.2 需求分析,8,8.2 需求分析,包括:名字,别名,使用地点与方式,内容描述和补充信息;,9,概念结构设计:将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计。,8.3 概念结构设计,概念结构独立于数据库逻辑结构,也独立于DBMS。是现实世界与机器世界的中介
4、,一方面能够充分反映现 实世界(实体与实体之间的联系),另一方面又易于向 关系等各种数据模型转换。是现实世界的一个真实模型,易于理解,便于和不熟悉 计算机的用户交换意见,使用户易于参与,当现实世界 需求改变时,概念结构可以很容易地作相应调整。概念结构设计是整个数据库设计的关键 设计工具:ER图,10,8.3 概念结构设计,11,概念模型:是现实世界到机器世界的一个过渡的中间层次。,概念模型特点:概念模型是对现实世界的抽象和概括,它真实、充分地 反映了现实世界中事物和事物之间的联系,能满足用户 对数据的处理要求。由于概念模型简洁、明晰、独立于机器,很容易理解 概念模型易于更改 概念模型容易向关系
5、、网状、层次等各种数据模型转换,8.3.1 概念模型,12,1.实体(Entity):客观存在并可相互区分的事物叫实体 例如:一个职工,一个纳税人,一个部门,一次纳税申报2.属性(Attribute):属性是实体具有的某一特性 一个实体可以由若干个属性来描述。例如:纳税人由纳税人识别号,名称,电话,行业,从业人数 钟表制造业,2500,),8.3.1 概念模型,概念模型涉及的主要概念:,13,码(Key)唯一标识实体的属性集称为码。例如,纳税人识别号是纳税人实体的码域(Domain)属性的取值范围 例如:名称域为字符串集合,从业人数域为正整数5.实体型(Entity type)用实体名及其属性
6、名集合来抽象和描述同类实体。例如,纳税人(纳税人识别号、名称、电话、行业、从业人数)是一个实体型,8.3.1 概念模型,14,实体集(Entity set)同型实体的集合称为实体集。例如,全体纳税人是一个实体集7.联系(Relationship):两类:实体内部的联系,如属性之间的联系;实体之间的联系 两个实体型之间的联系可以分为三类:一对一联系、一对多联系、多对多联系,8.3.1 概念模型,15,一对一联系(1:1):若对于实体集A中每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。一对多联系(1:n):若对于实体集A中的每一个实体,实
7、体集B中有n个实体(n=0)与之联系;反之,对于实体集B中的每一个实体,实体集A中至多一个实体与之联系,则称实体集A与实体集B具有一对多的联系,记为1:n多对多联系(m:n):若对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系;反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m=0)与之联系,则称实体集A与实体集B具有多对多的联系,记为m:n,8.3.1 概念模型,16,概念模型最常用的表示方法是:实体联系方法(Entity-Relationship Approach)用E-R图来描述现实世界某一组织的概念模型。在E-R图中:用长方形表示实体型,在框内写上实体名 用
8、椭圆形表示实体属性 用无向边把连接实体与其属性 用菱形表示实体间的联系,菱形框内写上联系名 用无向边把连接菱形与有关实体,在无向边旁标上 联系的类型(1:1,1:n,m:n),若联系也有属性,则把属性和菱形也用无向边连上,8.3.1 概念模型,17,8.3.1 概念模型,18,(a)实体与属性,(b)实体与实体间联系,8.3.1 概念模型,19,两实体间的联系(不考虑属性),8.3.1 概念模型,20,三实体间的联系(不考虑属性),8.3.1 概念模型,21,同室,1,学生,n,同一实体集内一对多的联系,8.3.1 概念模型,22,实体属性信息:仓库:仓库号、面积、电话号码、仓库主任的职工号
9、零件:零件号、名称、规格、价格、描述 供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称,8.3.1 概念模型,某工厂物资管理的概念模型,23,实体及其属性图,8.3.1 概念模型,24,实体间联系信息:一个仓库可以存放多种零件,一种零件可以存放在 多个仓库中,因此仓库和零件具有多对多的联系。职工之间具有领导被领导的关系。即仓库主任领导 若干保管员,因此职工实体集中具有一对多的联系。供应商、项目和零件三者间具有多对多联系。即 一个供应商可以供给若干项目多种零件,每个项目 可以使用不同供应商供应的零件,每种零件可由不 同供应商供给。,8.3
10、.1 概念模型,25,实体及其联系图,8.3.1 概念模型,26,1.局部视图设计步骤:对需求分析阶段收集到的数据进行分类、组织 形成实体、实体的属性 确定实体之间的联系类型,设计分E-R图。2.设计分E-R图:选择局部应用 依据:中层的数据流图较好地反映了局部应用 对每个局部应用逐一设计分E-R图,8.3.2 局部视图设计,27,3.确定实体、属性、联系:,“属性”不具有再描述的性质,是不可再分的数据项“属性”不能与其它实体具有联系 原则:为了简化E-R图,尽量作为属性对待,实体是客观世界中的事务,反映客观存在的对象 从数据流图和数据字典中抽取“实体”和“属性”的区分:,8.3.2 局部视图
11、设计,28,4.举例:,8.3.2 局部视图设计,29,零配件采购子系统的ER图设计:,8.3.2 局部视图设计,注:系统不复杂,从第一层流图入手,若复杂,应从更下层的流图入手,设计各个分ER图,由各个分ER图汇总成为局部应用的分ER图。,30,根据需求分析:产品和零件之间是多对多的联系 供应商和零件之间是多对多的联系(有属性“单价”)产品、零件、供应商三者之间还存在多对多的联系问题:零件与订货单之间是什么联系?已列出的实体和联系是否充分表示了应用的需求?调整E-R图:依据:区分实体和属性的准则、数据流图、数据字典,8.3.2 局部视图设计,31,调整E-R图:订单细节上升为实体。订单:由订单
12、号、供应商地址、日期等信息构成;订单细节:包括所订的零件号、数量。订单与订单细节两个实体间的联系:为1:n联系。订单细节与零件之间为1:1联系。报价反映的是供应商与零件之间的多对多联系,不必 作为实体对待。,8.3.2 局部视图设计,32,8.3.2 局部视图设计,33,实体的属性:产品:产品号,产品名称,预算 零件:零件号,零件名,规格,现有库存 供应商:供应商号,供应商名,地址,电话号码 订单:订单号,供应商名,供应商地址,日期 订单细节:订单号,细节号,零件号,订购数量,8.3.2 局部视图设计,34,视图集成的两种方式:多个分E-R图一次集成 逐步集成 用累加的方式,一次集成两个分E-
13、R图。,集成E-R图步骤:消除冲突,合并分E-R图,生成初步E-R图;进行修改,消除不必要的冗余,生成基本E-R图,8.3.3 视图的集成,35,消除冲突,合并分E-R图,生成初步E-R图 三类冲突:属性冲突、命名冲突、结构冲突(1)属性冲突:属性取值单位冲突。属性域的冲突,即属性值的类型、取值范围不同。解决:共同协商解决(2)命名冲突:异名同义:各个子系统对同一对象取了不同的名字同名异义,对不同的对象取了相同的名字解决:共同协商解决,8.3.3 视图的集成,36,(3)结构冲突(3种形式):同一对象在不同应用中作了不同的抽象。解决:遵循区分属性和实体的准则,使同一对象 在整个系统中具有相同的
14、抽象。同一实体在不同的分E-R图中属性的组成不同,或个数不同,或次序不同。解决:取各分E-R图中同一实体属性的并,然后 再适当调整属性的次序。例如:,8.3.3 视图的集成,37,例如:产品-产品号、产品名 产品名、产品号、数量、预算 产品号、生产部门代码、数量-产品号、产品名、生产部门代码、数量、预算实体间的联系在不同的分E-R图中为不同的类型解决:根据应用环境的语义来调整例如:产品、零件与供应商“供应”(多对多)零件与产品“构成”(多对多)这两个联系互相不能包含,合并时把它们综合起来,8.3.3 视图的集成,38,8.3.3 视图的集成,39,2.消除不必要的冗余,设计基本E-R图 冗余的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 软件 开发 基础 第八
链接地址:https://www.31ppt.com/p-6578409.html