《第02章数据库设计精选文档.ppt》由会员分享,可在线阅读,更多相关《第02章数据库设计精选文档.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第02章数据库设计本讲稿第一页,共三十四页2.1 数据库设计概述数据库设计概述 数据库设计数据库设计数据库设计是指对于一个给定的应用环境,构造(设计)优化数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。求,包括信息管理要求和数据操作要求。目标:为用户和各种应用系统提供一个信息基础设施和高效率的目标:为用户和各种应用系统提供一个信息基础设施和
2、高效率的运行环境。运行环境。本讲稿第二页,共三十四页一、数据库设计的任务一、数据库设计的任务 数据库设计的任务主要就是设计数据库模式,数据库设计的任务主要就是设计数据库模式,即设计数据库系统体系结构中三级模式的结构。即设计数据库系统体系结构中三级模式的结构。这个结构应能够概括具体的数据库应用系统的数这个结构应能够概括具体的数据库应用系统的数据库全局,还应能反映本系统所有用户的数据视据库全局,还应能反映本系统所有用户的数据视图。图。本讲稿第三页,共三十四页二、数据库设计的步骤二、数据库设计的步骤数据库设计按照规范化设计方法,分数据库设计按照规范化设计方法,分6 6个阶段个阶段需求分析阶段需求分析
3、阶段概念结构设计阶段概念结构设计阶段逻辑结构设计阶段逻辑结构设计阶段物理结构设计阶段物理结构设计阶段数据库实施阶段数据库实施阶段数据库使用与维护阶段数据库使用与维护阶段需求分析和概念设计独立于任何数据库管理系统需求分析和概念设计独立于任何数据库管理系统 逻辑设计和物理设计与选用的逻辑设计和物理设计与选用的DBMSDBMS密切相关密切相关本讲稿第四页,共三十四页二、数据库设计的步骤(续)二、数据库设计的步骤(续)需求分析阶段需求分析阶段准确了解与分析用户需求(包括数据与处理)准确了解与分析用户需求(包括数据与处理)最困难、最耗费时间的一步最困难、最耗费时间的一步本讲稿第五页,共三十四页二、数据库
4、设计的步骤(续)二、数据库设计的步骤(续)概念结构设计阶段概念结构设计阶段整个数据库设计的关键整个数据库设计的关键通过对用户需求进行综合、归纳与抽象,形成通过对用户需求进行综合、归纳与抽象,形成 一个独立于具体一个独立于具体DBMSDBMS的概念模型的概念模型本讲稿第六页,共三十四页二、数据库设计的步骤(续)二、数据库设计的步骤(续)逻辑结构设计阶段逻辑结构设计阶段将概念结构转换为某个将概念结构转换为某个DBMSDBMS所支持的数据模所支持的数据模 型型对其进行优化对其进行优化本讲稿第七页,共三十四页二、数据库设计的步骤(续)二、数据库设计的步骤(续)数据库物理结构设计阶段数据库物理结构设计阶
5、段为逻辑数据模型选取一个最适合应用环境的物为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)理结构(包括存储结构和存取方法)本讲稿第八页,共三十四页二、数据库设计的步骤(续)二、数据库设计的步骤(续)数据库实施阶段数据库实施阶段运用运用DBMSDBMS提供的数据库语言(如提供的数据库语言(如SQLSQL)及宿)及宿主语言,根据逻辑设计和物理设计的结果主语言,根据逻辑设计和物理设计的结果建立数据库建立数据库组织数据入库组织数据入库编制与调试应用程序编制与调试应用程序进行试运行进行试运行本讲稿第九页,共三十四页二、数据库设计的步骤(续)二、数据库设计的步骤(续)数据库运行和维
6、护阶段数据库运行和维护阶段数据库应用系统经过试运行后即可投入正式运数据库应用系统经过试运行后即可投入正式运 行行在数据库系统运行过程中必须不断地对其进行在数据库系统运行过程中必须不断地对其进行 评价、调整与修改评价、调整与修改本讲稿第十页,共三十四页2.2 需求分析需求分析一、需求分析的任务一、需求分析的任务详细调查现实世界要处理的对象(组织、部门、详细调查现实世界要处理的对象(组织、部门、企业等)企业等)充分了解原系统(手工系统或计算机系统)充分了解原系统(手工系统或计算机系统)明确用户的各种需求明确用户的各种需求确定新系统的功能确定新系统的功能充分考虑今后可能的扩充和改变充分考虑今后可能的
7、扩充和改变本讲稿第十一页,共三十四页二、需求分析的重点二、需求分析的重点需求分析的重点是通过调查获取用户对数据需求分析的重点是通过调查获取用户对数据库的要求,而调查的重点是库的要求,而调查的重点是“数据数据”和和“处处理理”,获得用户对数据库要求,获得用户对数据库要求信息要求信息要求处理要求处理要求安全性要求安全性要求完整性要求完整性要求本讲稿第十二页,共三十四页三、需求分析阶段的具体做法三、需求分析阶段的具体做法(1 1)调查数据库应用系统所涉及的用户的各部)调查数据库应用系统所涉及的用户的各部 门组织机构情况,业务活动情况。门组织机构情况,业务活动情况。(2 2)了解用户对数据库应用系统的
8、各种要求。)了解用户对数据库应用系统的各种要求。(3 3)深入分析用户的各种需求,协助用户明确)深入分析用户的各种需求,协助用户明确 对新系统的各种要求。对新系统的各种要求。(4 4)确定新系统的边界。)确定新系统的边界。本讲稿第十三页,共三十四页四、常用调查方法四、常用调查方法(1)(1)跟班作业跟班作业(2)(2)开调查会开调查会(3)(3)请专人介绍请专人介绍(4)(4)询问询问(5)(5)设计调查表请用户填写设计调查表请用户填写(6)(6)查阅记录查阅记录本讲稿第十四页,共三十四页2.3 概念结构设计概念结构设计 一、什么是概念结构设计一、什么是概念结构设计将需求分析得到的用户需求抽象
9、为信息结构即将需求分析得到的用户需求抽象为信息结构即 概念模型的过程就是概念结构设计概念模型的过程就是概念结构设计概念结构是各种数据模型的共同基础,它比数概念结构是各种数据模型的共同基础,它比数 据模型更独立于机器、更抽象,从而更加稳定据模型更独立于机器、更抽象,从而更加稳定概念结构设计是整个数据库设计的关键概念结构设计是整个数据库设计的关键本讲稿第十五页,共三十四页概念结构设计(续)概念结构设计(续)二、概念结构设计的特点二、概念结构设计的特点 (1)(1)能真实、充分地反映现实世界能真实、充分地反映现实世界 (2)(2)易于理解易于理解 (3)(3)易于更改易于更改 (4)(4)易于向关系
10、、网状、层次等各种数据模型转换易于向关系、网状、层次等各种数据模型转换三、描述概念模型的工具三、描述概念模型的工具E-RE-R模型模型本讲稿第十六页,共三十四页四、数据库概念结构的设计步骤四、数据库概念结构的设计步骤(1 1)设计)设计局部局部实体实体联系模型,用来描述用户视图。联系模型,用来描述用户视图。(2 2)综合)综合各局部各局部实体实体 联系模型,形成联系模型,形成总总的实体的实体联系模型,用来描述数据库全局视图。即用户视图的集联系模型,用来描述数据库全局视图。即用户视图的集成。成。本讲稿第十七页,共三十四页学学生生信信息息管管理理系系统统概概念念模模型型本讲稿第十八页,共三十四页2
11、.4 逻辑结构设计逻辑结构设计一、逻辑结构设计的任务一、逻辑结构设计的任务把概念结构设计阶段设计好的基本把概念结构设计阶段设计好的基本E-RE-R图转换图转换 为与选用为与选用DBMSDBMS产品所支持的数据模型相符合产品所支持的数据模型相符合 的逻辑结构的逻辑结构二、逻辑结构设计的步骤二、逻辑结构设计的步骤将概念结构转化为一般的关系、网状、层次模将概念结构转化为一般的关系、网状、层次模 型型将转换来的关系、网状、层次模型向特定将转换来的关系、网状、层次模型向特定 DBMS DBMS支持下的数据模型转换支持下的数据模型转换对数据模型进行优化对数据模型进行优化本讲稿第十九页,共三十四页 逻辑结构
12、设计逻辑结构设计(续续)逻辑结构设计时的逻辑结构设计时的3个步骤个步骤 目前新设计的数据库应用系统大都采用支持目前新设计的数据库应用系统大都采用支持关系数据模型关系数据模型的的RDBMSRDBMS。本讲稿第二十页,共三十四页2.4.1 E-R图向关系模型的转换图向关系模型的转换一、一、E-RE-R图向关系模型的转换要解决的问题图向关系模型的转换要解决的问题 如何将实体型和实体间的联系转换为关系模式如何将实体型和实体间的联系转换为关系模式如何确定这些关系模式的属性和码如何确定这些关系模式的属性和码 二、转换内容二、转换内容将将E-RE-R图转换为关系模型:将实体、实体的属图转换为关系模型:将实体
13、、实体的属 性和实体之间的联系转换为关系模式。性和实体之间的联系转换为关系模式。本讲稿第二十一页,共三十四页E-R图向关系模型的转换(续)图向关系模型的转换(续)三、概念模型转换关系模型的规则三、概念模型转换关系模型的规则(1)一个实体型转换为一个关系模式,实一个实体型转换为一个关系模式,实 体的属性就是关系的属性,实体的码就是体的属性就是关系的属性,实体的码就是 关系的码。关系的码。例:学生(例:学生(学号学号,姓名,性别,年龄),姓名,性别,年龄)学生学生学号学号年龄年龄性别性别姓名姓名本讲稿第二十二页,共三十四页三、概念模型转换关系的规则三、概念模型转换关系的规则(2 2)一个)一个1
14、1:1 1联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。每个实体的码均是该关系的候选码。如果与某一端实如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性体对应的关系模式合并,则需要在该关系模式的属性中加入另一关系模式的码和联系本身的属性。中加入另一关系模式的码和联系本身的属性
15、。例:管理(例:管理(职工号职工号,班级号班级号)或:班级(或:班级(班级号班级号,学生人数,学生人数,职工号职工号)或:教师(或:教师(职工号职工号,姓名,性别,职称,姓名,性别,职称,班级号班级号)本讲稿第二十三页,共三十四页三、概念模型转换关系的规则三、概念模型转换关系的规则(3 3)一个)一个1 1:n n联系可以转换为一个独立的联系可以转换为一个独立的关系模式,也可以与关系模式,也可以与n n端对应的关系模式端对应的关系模式合并。合并。如果转换为一个独立的关系模式,则与该联如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均系相连的各实体的码以及联系本身的属性
16、均转换为关系的属性,而关系的码为转换为关系的属性,而关系的码为n n端实体端实体的码。的码。如果与某一端实体对应的关系模式合并,如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一则需要在该关系模式的属性中加入另一关系模式的码及联系本身的属性。关系模式的码及联系本身的属性。例:组成(例:组成(学号学号,班级号),班级号)或:或:学生(学生(学号学号,姓名,性别,年龄,姓名,性别,年龄,班班级号)级号)本讲稿第二十四页,共三十四页(4 4)一个)一个 m:nm:n联系转换为一个关系联系转换为一个关系 模式,与该联系相连的各实体的码模式,与该联系相连的各实体的码 以及联系本身的属
17、性均转换为关系以及联系本身的属性均转换为关系 的属性。而关系的码为各实体码的的属性。而关系的码为各实体码的 组合。组合。例:选修(例:选修(学号学号,课程号课程号,成绩),成绩)三、概念模型转换关系的规则三、概念模型转换关系的规则本讲稿第二十五页,共三十四页三、概念模型转换关系的规则三、概念模型转换关系的规则(5 5)三个或三个以上实体间的一)三个或三个以上实体间的一个多元联系可以转接为一个关系模个多元联系可以转接为一个关系模式。式。与该多元联系相连的各实体的码以与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组属性,而关系
18、的码为各实体码的组合。合。例:讲授(例:讲授(课程号课程号,教师号教师号,书号书号)课程课程讲授讲授教师教师1m两个以上实体型间两个以上实体型间1:n联系联系参考书参考书n本讲稿第二十六页,共三十四页三、概念模型转换关系的规则三、概念模型转换关系的规则(6)同一实体集的实体间的联系可按)同一实体集的实体间的联系可按1:1,1:n,m:n情况处理。情况处理。(7)具有相同码的关系模式可合并。)具有相同码的关系模式可合并。例:拥有(例:拥有(学号学号,性别,性别)学生(学生(学号学号,姓名,出生日期,所在系,年级,班级号),姓名,出生日期,所在系,年级,班级号)合并后:合并后:学生(学生(学号学号
19、,姓名,姓名,性别性别,出生日期,所在系,年级,出生日期,所在系,年级,班级号)班级号)本讲稿第二十七页,共三十四页学学生生信信息息管管理理系系统统概概念念模模型型本讲稿第二十八页,共三十四页学院学院(学院编号学院编号,学院名称,院长姓名,电话,地址),学院名称,院长姓名,电话,地址)系系(系编号系编号,系名称,系主任,教研室个数,班级个数,系名称,系主任,教研室个数,班级个数,学院编号学院编号)班级班级(班级编号班级编号,班级名称,班级人数,班长姓名,专,班级名称,班级人数,班长姓名,专业,业,系编号系编号)教研室教研室(教研室编号教研室编号,教研室名称,教师人数,教研室名称,教师人数,系编
20、号系编号)学生学生(学号学号,姓名,性别,出生日期,籍贯,姓名,性别,出生日期,籍贯,班级编号班级编号)教师教师(教师编号教师编号,姓名,性别,职务,姓名,性别,职务,教研室编号教研室编号)课程课程(课程编号课程编号,课程名,学时,学分,学期,教室),课程名,学时,学分,学期,教室)成绩成绩(学号学号,课程编号课程编号,成绩),成绩)授课授课(教师编号教师编号,课程编号课程编号)概念模型转换成关系模型概念模型转换成关系模型本讲稿第二十九页,共三十四页2.4.2 数据模型的优化数据模型的优化得到初步数据模型后,还应该适当地修改、调整数得到初步数据模型后,还应该适当地修改、调整数据模型的结构,以进
21、一步提高数据库应用系统的性据模型的结构,以进一步提高数据库应用系统的性能,这就是数据模型的优化能,这就是数据模型的优化关系数据模型的优化通常以规范化理论为指导关系数据模型的优化通常以规范化理论为指导本讲稿第三十页,共三十四页2.5 数据库的物理结构设计数据库的物理结构设计数据库的物理结构设计数据库的物理结构设计数据库物理结构设计就是为设计好的逻辑数据模型选择最适数据库物理结构设计就是为设计好的逻辑数据模型选择最适合的应用环境。换句话说,就是能够在应用环境中的物理设合的应用环境。换句话说,就是能够在应用环境中的物理设备上,由全局逻辑数据模型产生一个能在特定的备上,由全局逻辑数据模型产生一个能在特
22、定的DBMS上实上实现的关系数据库模式。现的关系数据库模式。数据库物理结构设计主要分为两个方面数据库物理结构设计主要分为两个方面(1)(1)确定数据库的物理结构;确定数据库的物理结构;(2)(2)对物理结构进行评价。对物理结构进行评价。本讲稿第三十一页,共三十四页2.6数据库实施数据库实施数据库实施过程一般步骤如下:数据库实施过程一般步骤如下:(1)定义数据库结构)定义数据库结构 用用DBMS提供的数据定义语言严格描述数据库结构提供的数据定义语言严格描述数据库结构(2)组织数据入库)组织数据入库(数据库数据库)筛选数据筛选数据 转换数据格式转换数据格式 输入数据输入数据 校验数据校验数据 综合
23、数据综合数据(3)编写和调试应用程序)编写和调试应用程序(4)数据库试运行)数据库试运行本讲稿第三十二页,共三十四页2.7 数据库的运行与维护数据库的运行与维护数据库试运行合格后,数据库即可投入正式运行。数据库试运行合格后,数据库即可投入正式运行。数据库投入运行标志着开发任务的基本完成和维护工数据库投入运行标志着开发任务的基本完成和维护工作的开始。作的开始。对数据库设计进行评价、调整、修改等维护工作对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。是一个长期的任务,也是设计工作的继续和提高。本讲稿第三十三页,共三十四页2.7 数据库的运行与维护数据库的运行与维护数据库维护的主要工作内容有:数据库维护的主要工作内容有:(1 1)数据库转存和恢复。)数据库转存和恢复。(2 2)数据库安全性和完整性控制。)数据库安全性和完整性控制。(3 3)数据库性能的监督、分析和改进。)数据库性能的监督、分析和改进。(4 4)数据库的重新组织和重新建构。)数据库的重新组织和重新建构。本讲稿第三十四页,共三十四页
限制150内