access数据库设计案例_第1页
access数据库设计案例_第2页
access数据库设计案例_第3页
access数据库设计案例_第4页
access数据库设计案例_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

数据库设计第七章数据库设计7.1数据库设计过程与设计实例7.2需求分析7.3概念结构设计7.4逻辑结构设计7.5关系模式的规范化7.6设计实例——期刊采编系统7.1数据库设计过程

与设计实例前面章节介绍的内容只解决了系统的实现过程,即如何建立各种对象,但并没有解释为什么创建这些对象。数据库设计是根据一个给定的应用环境,构造最优的数据模型,利用DBMS,建立数据库应用系统。如何建立一个高效适用的数据库应用系统,是数据库应用领域中的一个重要课题。数据库设计是一项软件工程,具有自身的特点,已逐步形成了数据库设计方法学。简单地讲,数据库设计包括结构设计和行为设计。结构设计是指按照应用要求,确定一个合理的数据模型。数据模型是用来反映和显示事物及其关系的。结构设计的结果就是得到数据库中表的结构。行为设计是指应用程序的设计,将设计的结果物理化,实施数据库,如完成查询、修改、添加、删除、统计数据,制作报表等。行为设计要求满足数据的完整性、安全性、并发控制和数据库的恢复。数据库设计要经历6个阶段:需求分析概念结构设计逻辑结构设计物理结构设计数据库实施数据库运行与维护需求分析——数据流程图需求分析——数据流数据流名称:教师信息来源:教师去向:处理——授课包含的数据项:教师号姓名性别年龄职称专业需求分析——数据字典数据项名称数据类型及长度说明学号字符,固定长度6前4位为班号,后2位为在班内序号学生姓名字符,可变长度8

学生性别字符,固定长度2取值范围男或女……

概念结构设计逻辑结构设计“教学管理系统”的数据模型表示为:系(系号,系名,系主任,电话)教师(教师号,姓名,专业,职称,性别,年龄,系号)学生(学号,姓名,性别,出生日期,专业,照片,系号)课程(课程号,课程名,学时,类别)课程评价(教师号,课程号,评价)选修(学号,课程号,分数)

物理设计进行物理结构设计是根据使用的计算机软硬件环境和数据库管理系统,确定数据库表的结构,并进行优化,为数据模型选择合理的存储结构和存取方法,决定存取路径和分配存取空间等。

建立索引的基本原则1)如果一个属性(或一组属性)经常在查询条件或在连接操作的联接条件中出现,则考虑在这个属性(或这组属性)上建立索引(或组合索引)2)如果一个属性经常作为最大值或最小值等聚合函数的参数,则考虑在这个属性上建立索引数据库实施数据库实施是运用DBMS建立数据库,创建各种对象(表、窗体、查询……),编制与调试应用程序,录入数据,进行试运行数据库运行与维护数据库系统正式投入使用后,还应不断进行评价、修改与调整。这一时期的工作就是数据库的运行和维护。数据库设计流程7.2需求分析需求分析是数据库设计的起点和基础需求分析阶段的工作是详细准确地了解数据库应用系统的运行环境和用户要求开发的目的是什么用户需要从数据库中得到的数据信息是什么输出这些信息采用何种方式或格式需求分析的方法------调查步骤调查各部门的组成和业务活动帮助用户进一步明确系统最终要求把结果以标准化的文档表示出来,如使用数据流程图、数据字典和需求说明等方式发调查表请专业人员介绍询问跟班作业查阅资料数据流程图的基本画法数据流程图要表述出数据来源、数据处理、数据输出以及数据存储,它主要反映了数据和处理的关系。

7.3概念结构设计任务将需求分析结果抽象为概念模型方法建立E-R模型(Entity-Relationshipmodel)E-R模型的表示方法为E-R图E-R图实质表示了实体、属性和实体间的联系7.3.1E-R图的表示方法实体——用矩形表示,矩形框内写明实体名属性——用椭圆表示,椭圆内写明属性名,并且将椭圆用线与相应的实体连接。联系——用菱形表示,菱形框内写明联系名,并用线分别与有关的实体连接起来,同时在线上注明联系类型。(1:1,1:n或m:n)学生实体、课程实体的属性及其联系的E-R图表示

系、教师、学生和课程间的联系确定出实体与实体间联系教学管理的E-R模型

填全实体属性7.3.2建立E-R模型中的几个问题相对原则对于同一对象抽象的结果可能不同简单原则现实世界的事物能作为属性的尽量归为属性设计过程设计局部E-R模型集成全局E-R模型解决三种冲突命名冲突属性冲突结构冲突简单原则举例不考虑宿舍的进一步信息时,宿舍应作为属性建立E-R模型举例例7-1

一个企业应用包括人员管理、生产管理、设备管理等功能模块。其中:人员管理需要记录职工编号、职工姓名、职务(干部/工人)、年龄、性别等。一个职工工作于一个部门,一个部门有若干职工。对于部门应记录各部门的编号、部门名称、负责人、电话等信息。设计局部E-R模型

——人员管理的E-R图

设计局部E-R模型

——设备管理的E-R图

设计局部E-R模型

——生产管理的E-R图

将局部E-R模型集成全局E-R模型7.4逻辑结构设计任务将概念设计结果转换为DBMS支持的数据模型步骤将概念结构转换为数据模型将转换来的模型向特定DBMS支持的数据模型转换(这里使用关系数据库模型)对数据模型进行优化7.4.1E-R模型转换为

关系模型的方法实体的转换一个实体转换为一个关系模式实体间联系的转换一对一联系一对多联系多对多联系主键的定义实体的转换一个实体转换为一个关系模式实体的属性就是关系模式的属性实体的键就是关系的主键例如教学管理系统中共有教师、系、学生和课程四个实体,它们转换为关系模式后分别为教师(教师号,姓名,专业,职称,性别,年龄)系(系号,系名,系主任,电话)学生(学号,姓名,性别,出生日期,专业,照片)课程(课程号,课程名,学时,类别)

一对一联系的转换方法一联系转换为独立的关系模式模式的属性由联系本身的属性及两个实体的键构成主键由两个实体中的任意一个键构成方法二将联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内主键不变一对一联系的转换

——建立独立的关系模式实体对应关系模式分别为:班级(班号,专业,人数)班长(学号,姓名,专长)联系管理(班号,学号)关系模式“管理”的主键也可以选择学号一对一联系的转换

——合并到实体关系模式原实体对应关系模式分别为:班级(班号,专业,人数)班长(学号,姓名,专长)将联系“管理”合并到实体“班级”对应的模式后为:班级(班号,专业,人数,学号)班长(学号,姓名,专长)联系“管理”也可以合并到实体“班长”对应的模式一对多联系的转换方法一联系转换为独立的关系模式模式的属性由联系本身的属性及两个实体的键构成主键由n端实体的键组成方法二将联系与n端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内主键不变一对多联系的转换

——建立独立的关系模式实体对应的关系模式系(系号,系名,系主任,电话)教师(教师号,姓名,专业,职称,性别,年龄)联系对应的关系模式管理(教师号,系号)一对多联系的转换

——合并到实体关系模式实体对应的关系模式

系(系号,系名,系主任,电话)教师(教师号,姓名,专业,职称,性别,年龄)合并到实体“教师”后教师(教师号,姓名,专业,职称,性别,年龄,系号)只能合并到“多”的一端多对多联系的转换联系只能转换为独立模式模式的属性由联系本身的属性及两个实体的键构成主键由两端实体的键组合而成多对多联系的转换

——建立独立的关系模式课程(课程号,课程名,学时,类别)学生(学号,姓名,性别,专业,出生日期,照片)选修(学号,课程号,分数)7.4.2E-R模型转换为关系模型举例根据教学管理E-R模型建立教学管理系统的关系模型根据例7-1的E-R模型建立企业应用系统的关系模型系(系号,系名,系主任,电话)学生(学号,姓名,性别,出生日期,专业,照片)课程(课程号,课程名,学时,类别)

教师(教师号,姓名,专业,职称,性别,年龄)选修(学号,课程号,分数)课程评价(教师号,课程号,评价)管理(教师号,系号)注册(学号,系号)系(系号,系名,系主任,电话)课程(课程号,课程名,学时,类别)教师(教师号,姓名,专业,职称,性别,年龄,系号)学生(学号,姓名,性别,出生日期,专业,照片,系号)选修(学号,课程号,分数)课程评价(教师号,课程号,评价)教学管理的关系模型设备(设备编号,设备名称,价格)零件(零件编号,零件名称,规格)人员(职工编号,姓名,性别,年龄,职务)部门(部门编号,部门名称,负责人,电话)生产(零件编号,部门编号,生产日期,生产数量)装配(设备编号,零件编号,装配日期,装配数量)包含(职工编号,部门编号)人员(职工编号,姓名,性别,年龄,职务,部门编号)

管理(部门编号,设备编号)合并合并设备(设备编号,设备名称,价格,部门编号)企业应用的关系模型人员(职工编号,姓名,性别,年龄,职务,部门编号)部门(部门编号,部门名称,负责人,电话)设备(设备编号,设备名称,价格,部门编号)零件(零件编号,零件名称,规格)生产(零件编号,部门编号,生产日期,生产数量)装配(设备编号,零件编号,装配日期,装配数量)

7.4.3数据完整性设计实体完整性参照完整性用户自定义完整性7.5关系模式的规范化7.5.1问题的提出7.5.2函数依赖与键7.5.3关系模式的范式与规范化供应商编号供应商名称联系方式商品名称商品价格101华讯12345678光驱180101华讯12345678光盘150101华讯12345678打印纸20102欣欣87654321光盘160102欣欣87654321鼠标56…

例如针对供应商建立了如下关系模式:

供货(供应商编号,供应商名称,联系方式,商品名称,商品价格)数据冗余大数据不一致性操作异常这个模式存在如下问题函数依赖函数依赖的概念函数依赖的表示方法函数依赖的类型完全依赖部分依赖传递依赖

学生关系的函数依赖关系学生(学号,姓名,性别,出生日期,专业)该关系的函数依赖集表示为:学号→姓名学号→性别学号→出生日期学号→专业函数依赖的定义给定一关系R,若当且仅当对应于R中属性X的每一个值,在任一时刻必有一个确定的属性Y值,则称Y是函数依赖于X,也可称为X函数决定Y,记为X->Y。成绩(学号,姓名,课程号,课程名,分数)

成绩关系的函数依赖集:学号→姓名课程号→课程名(学号,课程号)→分数完全函数依赖和部分函数依赖完全依赖若称关系R中的属性Y是完全依赖于属性X,则应满足以下两个条件:属性Y函数依赖于属性X属性Y不函数依赖于属性X的任一真子集X’部分依赖如果属性Y只函数依赖于属性X的某一真子集X’,则称属性Y部分函数依赖于属性X。传递依赖定义:在关系R中,如果属性X、Y、Z之间满足:XY,YZ,则称Z对X传递依赖。例如关系模式:辅导(学号,班级,辅导员)函数依赖集:学号→班级班级→辅导员键定义:设K是关系R模式中的属性,当K的值确定后,关系中其它属性值也就唯一确定,且K的任何一个真子集不再具有这样的性质,则称K为R的键或候选键。注意:通常选择其中一个作主键K可以是单个属性或属性组合主属性与非主属性主属性包含在任何一个候选键中的属性称为主属性非主属性不包含在候选键中的属性称为非主属性或非键属性关系中主键是单属性的,则非键属性对主键肯定是完全函数依赖的。而当主键是复合属性时,则非键属性对主键的函数依赖就有完全依赖和部分依赖两种可能。外部键设X是关系模式R中的属性或属性组,X并非R的键,而是另一关系模式的键,则称X是R的外键。如:系(部门编号,系名,系主任,电话)教师(教师号,姓名,专业,职称,性别,年龄,部门编号)范式与规范化范式关系满足不同层次的要求就称为不同的范式范式由低到高依次为1NF,2NF,3NF,4NF,5NF规范化将一个低一级范式的关系模式分解为若干个满足高一级范式关系模式的集合的过程1NF、2NF、3NF1NF:如果关系模式R的每一个属性只包含单一的值,则关系模式R满足1NF2NF:如果关系R满足第一范式,而且它的所有非主关键字属性完全依赖于整个主属性(也就是说,不存在部分依赖),则R满足第二范式3NF:如果某关系满足第二范式,而且他的任何一个非主属性都不传递函数依赖于任何非主属性,则R满足第三范式

温馨提示

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

评论

0/150

提交评论