版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章第七章 数据库设计数据库设计数据库系统概论数据库系统概论An Introduction to Database System应用示例应用示例某销售公司的数据库需要如下的数据处理:v每月造一张月报表,表中包括信息:n顾客订单号、订货日期、交货日期、产品号、产品名、产品类型、订购数量、单价、金额、顾客号、顾客姓名、地址。v订货产品要组织货源,需要在终端上查询:n输入:产品号n输出:产品号、产品名、生产厂、出厂价、交货日期、交货数量应用示例(续)应用示例(续)v经理要了解某段时间的业务情况:n输入:交货日期范围n输出:客户所订货物的总数量、总金额v经理还要了解某段时间不同类型产品的订货情况:n
2、输入:订货日期范围n输出:产品类型、订货数量、订货金额根据上述数据处理要求,设计并实现数据库系统。应用示例(续)应用示例(续)现假设有如下的原始单据: n公司从生产厂家购回货物时,应填写订货单据产品名产品名规格型号规格型号单位单位单价单价数量数量金额金额 备注 订货单订货单编号: 厂家: 交货日期:应用示例(续)应用示例(续)n销售给用户货物时须开销售发票产品名产品名规格型号规格型号单位单位单价单价数量数量金额金额 合 计 金 额 备注 销售发票销售发票定单号: 顾客姓名: 定货日期: 交货日期: 第七章第七章 数据库设计数据库设计7.1 数据库设计概述数据库设计概述7.2 需求分析需求分析7
3、.3 概念结构设计概念结构设计7.4 逻辑结构设计逻辑结构设计7.5 数据库的物理设计数据库的物理设计7.6 数据库实施和维护数据库实施和维护7.7 小结小结数据库和信息系统数据库和信息系统v通常把使用数据库的各类信息系统统称为数据库应用系统。n例如,各种管理信息系统、电子政务系统、电子商务系统等v数据库是信息系统的核心和基础n把信息系统中大量的数据按一定的模型组织起来n提供存储、维护、检索数据的功能n使信息系统可以方便、及时、准确地从数据库中获得所需的信息v数据库设计是信息系统开发和建设的重要组成部分7.1 数据库设计概述数据库设计概述v 数据库设计n数据库设计是指对于一个给定的应用环境,构
4、造优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。l信息管理要求是指在数据库中应存储哪些对象l数据操作要求是指对数据对象要进行哪些操作数据库设计任务数据库设计任务7.1.1 数据库设计的特点数据库设计的特点v数据库建设的基本规律:三分技术,七分管理,十二分基础数据 n技术:数据库及其相关的技术n管理:包括 l数据库建设项目管理 l企业(即应用部门)的业务管理 n基础数据:应强调基础数据的重要性 l数据的收集、入库 l更新新的数据v数据结构设计和数据处理设计相结合 n数据结构设计:设计数据库框架或
5、数据库结构n数据处理设计:设计应用程序、事务处理等数据库设计的特点(续)数据库设计的特点(续)现实世界概念模型设计子模式设计物理数据库设计逻辑数据库设计建立数据库数据分析功能分析功能模型功能说明事务设计程序说明应用程序设计程序编码调试v结构和行为分离的设计模式: 7.1.2 数据库设计方法数据库设计方法v数据库设计涉及多方面的技术和知识:n计算机的基础知识n程序设计的方法和技巧n软件工程的原理和方法n数据库的基本知识n数据库设计技术n应用领域的知识n数据库设计方法数据库设计方法v 手工设计方法 n早期数据库设计主要采用手工与经验相结合的方法n缺乏科学理论和工程方法的支出n设计质量与设计人员的经
6、验和水平有直接关系n数据库运行一段时间后常常不同程度地发现各种问题,增加了维护代价数据库设计方法(续)数据库设计方法(续)v规范设计法n基本思想:过程迭代和逐步求精v典型的规范化方法:n基于E-R模型的数据库设计方法l概念设计阶段广泛采用n新奥尔良(New Orleans)方法l将数据库设计分为若干阶段和步骤n3NF(第三范式)的设计方法l逻辑阶段可采用的有效方法 nODL(Object Definition Language)方法l面向对象的数据库设计方法数据库设计方法(续)数据库设计方法(续)v计算机辅助设计方法n目前一些厂家开发了数据库设计工具,在数据库的设计中可以辅助完成一些设计工作,
7、如:lORACLE Designer 2000lSYBASE PowerDesigner7.1.3 数据库设计的基本步骤数据库设计的基本步骤v按照结构化系统设计方法,数据库设计分6个阶段n需求分析n概念结构设计n逻辑结构设计n物理结构设计n数据库实施n数据库运行和维护 v说明:n需求分析和概念设计独立于任何数据库管理系统 n逻辑设计和物理设计与选用的DBMS密切相关数据库设计的基本步骤(续)数据库设计的基本步骤(续)v数据库设计的准备工作:选定参加设计的人 1. 系统分析人员、数据库设计人员 n自始至终参与数据库设计 2. 用户和数据库管理员 n主要参加需求分析和数据库的运行维护 3. 应用开
8、发人员n在系统实施阶段参与进来,负责编制程序和准备软硬件环境 数据库设计的基本步骤(续)数据库设计的基本步骤(续)需求分析阶段n准确了解与分析用户需求(包括数据与处理)n最困难、最耗费时间的一步概念结构设计阶段n通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型n整个数据库设计的关键数据库设计的基本步骤(续)数据库设计的基本步骤(续)逻辑结构设计阶段n将概念结构转换为某个DBMS所支持的数据模型n对其进行优化数据库物理设计阶段n为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)数据库设计的基本步骤(续)数据库设计的基本步骤(续)数据库实施阶段n运用D
9、BMS提供的数据库语言(如SQL)及宿主语言,根据逻辑设计和物理设计的结果l建立数据库l编制与调试应用程序l组织数据入库l进行试运行数据库设计的基本步骤(续)数据库设计的基本步骤(续)数据库运行和维护阶段n数据库应用系统经过试运行后即可投入正式运行n在数据库系统运行过程中必须不断地对其进行评价、调整与修改设计一个完善的数据库应用系统往往是上述六个阶段的不断反复数据库设计的基本步骤(续)数据库设计的基本步骤(续)需求收集和分析设计概念结构 设计物理结构数据模型优化设计逻辑结构 评价设计、性能预测物理实现 试运行使用、维护数据库不满意不满意需求分析阶段概念设计阶段逻辑设计阶段物理设计阶段数据库实施
10、阶段数据库运行、维护阶段数据库设计的基本步骤(续)数据库设计的基本步骤(续)v两点说明:n设计过程中应把数据库设计和对数据库中数据处理的设计紧密结合起来l将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计n设计过程中在各个阶段用不同的工具(手段)进行描述设计数据库设计各个阶段的设计描述7.1.4 数据库设计过程中的各级模式数据库设计过程中的各级模式v数据库设计不同阶段形成的数据库各级模式数据库各级模式的形成数据库各级模式的形成v概念设计阶段n综合各个用户的应用需求,形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)v逻辑设计阶段n将
11、E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式n根据用户需求,在基本表上建立视图(View),形成数据的外模式v物理设计阶段n根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式第七章第七章 数据库设计数据库设计7.1 数据库设计概述数据库设计概述7.2 需求分析需求分析7.3 概念结构设计概念结构设计7.4 逻辑结构设计逻辑结构设计7.5 数据库的物理设计数据库的物理设计7.6 数据库实施和维护数据库实施和维护7.7 小结小结7.2 需求分析需求分析v需求分析就是分析用户的需要与要求n需求分析是设计数据库的起点n需求分析的结果是否准确地反映
12、了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用7.2.1 需求分析的任务需求分析的任务v需求分析的任务:n通过详细调查现实世界要处理的对象(组织、部门、企业等)n充分了解原系统(手工系统或计算机系统)工作概况n明确用户的各种需求n在此基础上确定新系统的功能7.2.2 需求分析的方法需求分析的方法v需求分析的方法与步骤: 1、收集用户的需求 2、分析用户的需求 3、撰写需求说明书1、收集用户需求、收集用户需求v调查过程中,应从三个方面获得用户对系统的要求:n信息要求:用户要求在数据库中存储那些数据n处理要求:用户要求完成什么处理功能,以及响应时间、处理方式等。n
13、安全性与完整性要求。 收集用户需求的步骤收集用户需求的步骤1.调查组织机构情况:n了解各组织部门的组成情况, 各部门的职责等2.调查各部门的业务活动情况。包括n各个部门输入和使用什么数据n如何加工处理这些数据n输出什么信息、输出到什么部门、 输出结果的格式等特别要注意收集各种原始资料,如票证、单据、报表、计划、合同等,并详细了解其中各数据项的用途、含义、类型、长度等。收集用户需求的步骤(续)收集用户需求的步骤(续)3.在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。n包括信息要求、处理要求、 完全性与完整性要求4.确定新系统的边界n确定哪些功能由计算机完成或将来准备让计算机完成n确定哪
14、些活动由人工完成常用调查方法常用调查方法v在调查过程中,根据情况可采用不同的调查方法:n跟班作业:通过亲身参加业务工作了解业务活动的情况,能比较准确地理解用户的需求。n开调查会:通过与用户座谈来了解业务活动情况及用户需求。n请专人介绍n询问:对某些调查中的问题,可以找专人询问n设计调查表请用户填写n查阅记录:查阅与原系统有关的数据记录加强与用户的交流加强与用户的交流v设计系统的过程中,要强调用户的参与和交流:n用户对新系统不了解,往往不能准确的表达自己的需求。而且提出的需求可能不断变化。n设计人员对业务不熟悉,不易理解用户的真正需求2、分析和表达用户需求、分析和表达用户需求v调查了解了用户的需
15、求后,还需要分析和表达用户的需求。v结构化分析方法(Structured Analysis,简称SA方法)n从最上层的系统组织机构入手n自顶向下、逐层分解的方式分析系统n并用数据流图和数据字典描述系统l使用数据流图描述信息处理过程l使用数据字典描述数据数据流图数据流图v数据流图(Data Flow Diagram,简称DFD):n以图形的方式在逻辑上描述系统的功能、输入、输出和数据存储等情况。v数据流图的符号 或或或数据源/终点数据处理数据存储数据流数据流图(续)数据流图(续)v符号的含义:n数据源点或终点:数据的始发点或终止点。如一个人或组织。n数据流:数据的流向。如单据、报表等数据的传递。
16、n数据处理:对数据的加工处理过程。处理名字应包含某个动词,必须具有输入和输出数据流。n数据存贮:数据的存储。例如帐册、台帐、计算机文件等。l指向数据存贮的数据流可以理解为写数据,l从数据存贮引出的数据流可以理解为读数据,l双向数据流可以理解为修改数据;数据流图(续)数据流图(续)v数据流图的用途n用作分析和设计系统的工具n作为交流的工具l符号简单,易于理解v数据流图的绘制n提取出数据流图的四种成分l首先提取数据源点和终点,然后考虑处理,最后考虑数据流和数据存储n绘制数据流图SA方法分析和表达用户需求方法分析和表达用户需求(1)首先把任何一个系统都抽象为如下模式:处理数据来源数据输出数据存储系统
17、高层抽象图数据流数据流SA方法分析和表达用户需求(续)方法分析和表达用户需求(续)(2)分解处理功能和数据n分解处理功能 将处理功能的内容分解为若干子功能,再将每个子功能继续分解,直到把系统的工作过程表达清楚为止。n分解数据 在处理功能逐步分解的同时,其所用的数据也逐级分解,形成若干层次的数据流图l上层数据流图是下层的整体逻辑概貌l下层数据流图是上层的详细描述。SA方法分析和表达用户需求(续)方法分析和表达用户需求(续)XX系统子模块1子模块2子模块n子模块1.2子模块1.1最高层数据流图数据流图1数据流图1.1数据流图1.2数据流图2数据流图n 数据流图的建立SA方法分析和表达用户需求(续)
18、方法分析和表达用户需求(续)v数据流图表达了数据和处理之间的关系n数据流图的用于描述系统必须完成的基本逻辑功能,而不考虑具体如何实现,即描绘“做什么”,而不考虑“怎么做”。n处理过程的处理逻辑:可用判定表或判定树来描述n数据:用数据字典来描述7.2.3 数据字典数据字典v 数据字典是系统中各类信息的描述n数据流图反映了数据在系统中的流向及转换过程,但对于数据的详细内容却无法在数据流图中反映。n数据字典是在数据流图的基础上,对数据流图中出现的元素进一步定义和描述。数据字典数据字典v 数据字典的内容n数据字典包括:数据项、数据结构、数据流、数据存储和处理过程五部分n数据项是数据的最小组成单位n若干
19、个数据项可以组成一个数据结构n数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。 数据项数据项v数据项是不可再分的数据单位v对数据项的描述 数据项描述 数据项名,数据项含义说明,别名, 数据类型,长度,取值范围,取值含义, 与其他数据项的逻辑关系,数据项之间的联系 n取值范围、与其他数据项的逻辑关系定义了数据的完整性约束条件n数据项之间的联系描述了数据项之间的数据依赖关系 数据结构数据结构v数据结构反映了数据之间的组合关系。n一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。v对数据结构的描述数据结构描述数据结构名,含义说明
20、, 组成:数据项或数据结构 数据流数据流v 数据流是数据结构在系统内传输的路径。v 对数据流的描述 数据流描述 数据流名,说明, 数据流来源,数据流去向, 组成:数据结构, 平均流量,高峰期流量 数据存储数据存储v数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。v对数据存储的描述 数据存储描述数据存储名,说明,编号, 输入的数据流 ,输出的数据流 , 组成:数据结构,数据量, 存取频度,存取方式 处理过程处理过程v处理过程说明性的信息描述处理过程描述处理过程名,说明, 输入:数据流, 输出:数据流, 处理:简要说明n简要说明:主要说明该处理过程的功能及处理要求v具体处理逻辑一般用判定表或判定树来描述数据字典示例数据字典示例例:学生学籍管理子系统的数据字典。数据项:以“学号”为例:数 据 项: 学号含义说明:唯一标识每个学生别名:学生编号类型:字符型长度:8取值范围:00000000至99999999取值含义:前两位标别该学生所在年级,后六位按顺序编号与其他数据项的逻辑关系:无数据字典示例(续)数据字典示例(续)数据结构:以“学生”为例“学生”是该系统中的一个核心数据结构:数据结构:学生含义说明:是学籍管理子系统的主体数据结构,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026甘肃省人力资源市场招聘就业见习人员6人备考题库及答案详解【真题汇编】
- 2026贵州黔东南州黄平县生态移民公益性岗位人员招聘1人备考题库附参考答案详解(b卷)
- 2026广西贵港市覃塘区工商业联合会招聘编外人员1人备考题库(综合题)附答案详解
- 2026北京大学力学与工程科学学院招聘1名劳动合同制工作人员备考题库及完整答案详解(夺冠系列)
- 2026广西河池大化瑶族自治县实验中学德育工作辅助人员招聘1人备考题库附参考答案详解(综合卷)
- 2026上海医药工培生计划春季招聘备考题库(预热题)附答案详解
- 手机充电要避免过夜充安全防范措施
- 2026浙江康复医疗中心银龄医师招聘备考题库及参考答案详解(巩固)
- 2026江苏苏州太仓农商行招聘2人备考题库及完整答案详解【名校卷】
- 水解蒸煮工操作知识考核试卷含答案
- 乡镇禁毒举报奖惩制度
- 2026年江西赣州市高三一模高考数学试卷试题(含答案详解)
- 2026年安徽新闻出版职业技术学院单招综合素质考试题库及一套答案详解
- 2023年毕节地区毕节市广播电视台(融媒体中心)招聘笔试题库及答案解析
- 2型糖尿病及围手术期血糖管理【骨科】-课课件
- 毕业证明书申请表(模板)
- 第5章护际关系伦理第6章课件讲义
- 国际标准行业分类第4版ISICRev-4中文版
- 特种设备安全培训课件
- (2023最新)给水排水管道工程施工及验收规范
- 部编人教版九年级历史下册全册知识点总结
评论
0/150
提交评论