数据库设计ppt课件

上传人:pu****.1 文档编号:570070264 上传时间:2024-08-01 格式:PPT 页数:53 大小:331KB
返回 下载 相关 举报
数据库设计ppt课件_第1页
第1页 / 共53页
数据库设计ppt课件_第2页
第2页 / 共53页
数据库设计ppt课件_第3页
第3页 / 共53页
数据库设计ppt课件_第4页
第4页 / 共53页
数据库设计ppt课件_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《数据库设计ppt课件》由会员分享,可在线阅读,更多相关《数据库设计ppt课件(53页珍藏版)》请在金锄头文库上搜索。

1、数据库设计ppt课件Stillwatersrundeep.流静水深流静水深,人静心深人静心深Wherethereislife,thereishope。有生命必有希望。有生命必有希望一数据库设计概述什么是数据库设计数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。一数据库设计概述为什么要数据库设计数据库是信息系统的核心和基础把信息系统中大量的数据按一定的模型组织起来提供存储、维护、检索数据的功能使信息系统可以方便、及时、准确地从数据

2、库中获得所需的信息数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在数据库设计是信息系统开发和建设的重要组成部分好的信息系统:50%专业知识+25%数据库设计+25%系统设计一数据库设计概述数据库设计的特点数据库建设是硬件、软件和干件的结合三分技术,七分管理,十二分基础数据技术与管理的界面称之为“干件” 数据库设计应该与应用系统设计相结合结构(数据)设计:设计数据库框架或数据库结构行为(处理)设计:设计应用程序、事务处理等数据库设计与应用设计相结合现实世界现实世界概念模型设计概念模型设计子模式设计子模式设计物理数据库设计物理数据库设计逻辑数据库设计逻辑数据库设计建立数据库建立

3、数据库数据分析数据分析功能分析功能分析功能模型功能模型功能说明功能说明事务设计事务设计程序说明程序说明应用程序设计应用程序设计程序编码调试程序编码调试数据库设计方法手工拼凑法设计人员的经验规范设计法新奥尔良(NewOrleans)方法:四个阶段S.B.Yao方法:五个步骤I.R.Palmer方法:一步接一步的过程辅助工具ORACLEDesigner2000SYBASEPowerDesigner数据库设计阶段IPO表输入:输出:处理:CreatLoadMain()ifthenend分区1分区2概念结概念结构设计构设计逻辑逻辑结构结构设计设计物理物理设计设计设设计计阶阶段段设设计计描描述述数数据据

4、处处理理需需 求求分分析析数据字典、全系统中数据项、数据字典、全系统中数据项、数据流、数据存储的描述数据流、数据存储的描述数数据据流流图图和和判判定定表表(判判定定树树)、数数据字典中处理过程的描述据字典中处理过程的描述概念模型(概念模型(E-R图)图)数据字典数据字典系统说明书包括:系统说明书包括:新系统要求、新系统要求、方案和概图方案和概图反映新系统信息反映新系统信息流的数据流图流的数据流图某种数据模型某种数据模型关系关系非关系非关系系统结构图系统结构图(模块结构)(模块结构)存储安排存储安排方法选择方法选择存取路径建立存取路径建立模块设计模块设计IPO表表实施实施阶段阶段编写模式编写模式

5、装入数据装入数据数据库试运行数据库试运行程序编码、程序编码、编译联结、编译联结、测试测试运运行行、维护维护性能监测、转储性能监测、转储/恢复恢复数据库重组和重构数据库重组和重构新新旧旧系系统统转转换换、运运行行、维维护护(修修正正性性、适应性、改善性维护)适应性、改善性维护)需求分析需求分析就是分析用户的需要与要求需求分析是设计数据库的起点需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用好的信息系统50%专业就是强调需求分析需求分析-任务通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作

6、概况,明确用户的各种需求在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库需求分析-重点需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。信息要求用户需要从数据库中获得信息的内容与性质在数据库中需要存储哪些数据处理要求对处理功能的要求对处理的响应时间的要求需求分析-难点用户缺少计算机知识,开始时无法确定计算机究竟能为自己做什么,不能做什么,因此无法一下子准确地表达自己的需求,他们所提出的需求往往不断地变化。设计人员缺少用户的专业知识,不易理解用户的真正需求,甚至误解用户的需求。新的硬件、软件技术的出现也

7、会使用户需求发生变化。需求分析方法步骤调查清楚用户的实际需求并进行初步分析与用户达成共识进一步分析与表达这些需求自顶向下的结构化分析方法(StructuredAnalysis,简称SA方法)需求分析方法调查组织机构情况调查各部门的业务活动情况各个部门输入和使用什么数据如何加工处理这些数据输出什么信息输出到什么部门、输出结果的格式在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。需求分析常用调查方法?跟班作业(能比较准确地理解用户的需求)通过亲身参加业务工作了解业务活动的情况开调查会通过与用户座谈来了解业务活动情况及用户需求请专人介绍询问设计调查表请用户填写如果调查表设计合理,则很有效,且

8、易于为用户接受查阅记录:查阅与原系统有关的数据记录数据字典数据字典是各类数据描述的集合数据字典是进行详细的数据收集和数据分析所获得的主要结果数据字典在数据库设计中占有很重要的地位数据字典数据字典的内容数据项:数据项是数据的最小组成单位(字段)数据项描述数据项名,数据项含义说明,名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系数据结构:若干个数据项可以组成一个数据结构(表、视图)数据结构描述数据结构名,含义说明,组成:数据项或数据结构数据流:数据流是数据结构在系统内传输的路径数据流描述数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量数据字典数据字典的内容

9、数据存储数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一数据存储描述数据存储名,说明,编号,流入的数据流,流出的数据流,组成:数据结构,数据量,存取方式处理过程处理过程描述处理过程名,说明,输入:数据流,输出:数据流,处理:简要说明数据字典处理过程“分配宿舍”可如下描述:处理过程:分配宿舍说明:为所有新生分配学生宿舍输入:学生,宿舍,输出:宿舍安排处理:在新生报到后,为所有新生分配学生宿舍。要求同一间宿舍只能安排同一性别的学生,同一个学生只能安排在一个宿舍中。每个学生的居住面积不小于3平方米。安排新生宿舍其处理时间应不超过15分钟。数据流图(DFD描述数据处理过程的一种图形工具。

10、基本符号加工(标注加工的名字与标号)数据流(名称与编号)数据存储文件(文件名)数据源点或汇点学籍管理系统需求分析功能学生选课教师对课程成绩的输入学生成绩查询统计功能学籍管理系统需求分析保存在系统中的信息人员记录:学生和教师学业纪录学生已经完成的课程本学期选修的课程为下学期选修的课程课程信息教课信息教室信息学籍管理系统需求分析保存在系统中的信息(二)课程信息课程名、课程号、开课院系、学时开课学期(春、秋)允许选修的最大人数上课时间教课信息:为本学期开课的所有课程保留一条信息课程开课教师开课地点选课学期教室信息:教室号和座位数学籍管理系统需求分析数据完整性约束Id号唯一注册的学生数目不能大于该课程

11、的最大人数在相同时间,不能为一个教员指派两门课程相同的时间,一个教室不能有两门课程若学生选修一门课程,若该课程有预备课程则学生要选修了这门课程,且成绩至少为60。一个学生不能注册在相同时间上课的两门课程在一个学期内,一个学生选修课程的学分不能超过20分,分配给一个课程的教室座位数应该大于等于该课程的最大学生人数。学生教师教室课程选课管理课表选课错误选课课程信息教室信息上课信息成绩选课成绩单开课信息单选课及成绩课程信息学生P3.1选课信息输入P3.2选课信息查询P3.3选课信息确认选课信息课程信息课程数据学生选课信息学生选课数据选课信息教务员选课信息查询选课审核确认的选课信息没确认的选课信息分层

12、数据流图-选课管理数据字典序号数据流名来源流向组成1选课信息学生P3.1课程号+年号+开课学期2学生选课数据P3.1学生选课信息学号+课程号+年号+开课学期3选课信息查询教务员P3.2课程号+年号+学期数据流序号数据文件文件组成组织1学生选课信息学号+课程号+年号+学期按开课学年、学期降序数据存储数据库概念设计什么是数据库概念设计将需求分析得到的用户需求抽象为信息结构现实世界现实世界机器世界机器世界信息世界信息世界需求分析需求分析概念结构设计概念结构设计数据库概念设计(1)能真实、充分地反映现实世界。是对现实世界的一个真实模型。(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积

13、极参与是数据库的设计成功的关键。(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。(4)易于向关系、网状、层次等各种数据模型转换。数据库概念设计常用的概念设计E-RUML建模设计概念结构的四类方法自顶向下首先定义全局概念结构的框架,然后逐步细化自底向上首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构逐步扩张首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构混合策略自顶向下自底向上逐步扩张三种常用抽象1.分类(Classification)(实体型)定义某一类概念作为现实世界中一组对象的类型这些对象具有某些共同的

14、特性和行为它抽象了对象值和型之间的“ismemberof”的语义2.聚集(Aggregation)(属性)它抽象了对象内部类型和成分之间“ispartof”的语义在E-R模型中若干属性的聚集组成了实体型,就是这种抽象3.概括(Generalization)(子类)它抽象了类型之间的“issubsetof”的语义概括有一个很重要的性质:继承性。ER集成的两种方式一次集成一次集成多个分E-R图通常用于局部视图比较简单时逐步累积式(P224图6.25(b))首先集成两个局部视图(通常是比较关键的两个局部视图)以后每次将一个新的局部视图集成进来E-R集成冲突两类属性冲突属性域冲突:属性值的类型、取值范

15、围或取值集合不同。例1,由于学号是数字,因此某些部门(即局部应用)将学号定义为整数形式,而由于学号不用参与运算,因此另一些部门(即局部应用)将学号定义为字符型形式。属性取值单位冲突。例:学生的身高,有的以米为单位,有的以厘米为单位,有的以尺为单位E-R集成冲突两类命名冲突同名异义:不同意义的对象在不同的局部应用中具有相同的名字例,局部应用A中将教室称为房间局部应用B中将学生宿舍称为房间异名同义(一义多名):同一意义的对象在不同的局部应用中具有不同的名字例,有的部门把教科书称为课本有的部门则把教科书称为教材E-R集成冲突三类结构冲突同一对象在不同应用中具有不同的抽象例,“课程”在某一局部应用中被

16、当作实体在另一局部应用中则被当作属性解决方法:通常是把属性变换为实体或把实体变换为属性,使同一对象具有相同的抽象。变换时要遵循两个准则。同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。实体之间的联系在不同局部视图中呈现不同的类型学生学生学号学号姓名姓名性别性别平均成绩平均成绩学生学生学号学号姓名姓名出生日期出生日期年级年级所在系所在系学生学生平均平均成绩成绩学号学号出生出生日期日期年级年级所在系所在系姓名姓名性别性别(a)(b)合并学生课程教师教室选课排课mpnmn选课管理系统E-R图逻辑结构设计逻辑结构设计的任务概念结构是各种数据模型的共同基础为了能够用某一DB

17、MS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。逻辑结构设计的步骤E-R图关系模型SQL数据模型数据模型优化逻辑结构设计转换内容E-R图由实体、实体的属性和实体之间的联系三个要素组成关系模型的逻辑结构是一组关系模式的集合将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。逻辑结构设计一个实体型转换为一个关系模式。一个m:n联系转换为一个关系模式。 关系的属性关系的属性:与该联系相连的各实体的码以及联系本身的属性 关系的码关系的码:各实体码的组合例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课

18、程号为关系的组合码:一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并(合并后关系的属性合并后关系的属性:在n端关系中加入1端关系的码和联系本身的属性)将其学生关系模式合并:学生(学号,姓名,出生日期,所在系,年级,班级号,平均成绩)逻辑结构设计一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系转换为一个关系模式。 关系的属性关系的属性:与该多元联系相连的各实体的码以及联系本身的属性 关系的码关系的码:各实体码的组合例,“讲授”联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书号为关系的

19、组合码:讲授(课程号,职工号,书号)逻辑结构设计同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。具有相同码的关系模式可合并。目的:减少系统中的关系个数。合并方法:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适当调整属性的次序。优化数据模型的方法确定数据依赖对于各个关系模式之间的数据依赖进行极小化处理,按照数据依赖的理论对关系模式逐一进行分析,确定各关系模式分别属于第几范式。按照需求分析阶段得到的各种应用对数据处理的要求,确定是否要对它们进行合并或分解。(并不是规范化程度越高越好)优化数据模型的方法按

20、照需求分析阶段得到的各种应用对数据处理的要求,对关系模式进行必要的分解或合并水平分解元组(20/80原则)垂直分解属性分解逻辑设计-学籍管理教师、课程、学生、选课、讲授模式教师(教师编号,教师姓名,性别,职称,电话,系编号)课程(课程号,课程名,上课时间,学分,前修课程)讲授(教师编号,课程号,开课年度,开课学期)学生(学号,姓名,性别,出生年月,电话,班级编号)选课(学号,课程号,教师编号,开课年度,开课学期,成绩)转成数据表的结构设计物理设计什么是数据库的物理设计数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统。为一个给定的逻辑数据模型选取一个最适合应用

21、环境的物理结构的过程,就是数据库的物理设计。物理设计选择物理数据库设计所需参数数据库查询事务查询关系、属性;连接的属性;投影属性数据更新事务被更新的关系每个关系上的更新操作条件所涉及的属性修改操作要改变的属性值每个事务在各关系上运行的频率和性能要求物理设计关系数据库物理设计的内容1.为关系模式选择存取方法(建立存取路径)索引方法,目前主要是B+树索引方法聚簇(Cluster)方法HASH方法2.设计关系、索引等数据库文件的物理存储结构索引选择索引存取方法的主要内容根据应用要求确定对哪些属性列建立索引对哪些属性列建立组合索引对哪些索引要设计为唯一索引索引选择索引存取方法的一般规则如果一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引)如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引关系上定义的索引数过多会带来较多的额外开销维护索引的开销和查找索引的开销物理设计-学籍管理对信息系统中经常用查询的数据进行分析成绩查询:针对学号和课程号建立唯一索引课程信息查询:针对课程号和课程名建立索引教师授课信息查询:针对教师编号和课程号建立唯一索引;教师信息查询:根据教师编号、姓名、系部建立索引学生信息查询:学号、姓名建立索引。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号