- 1、本文档共67页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
08-2 第十章 数据库系统设计2课件
第十章 数据库系统设计;本章学习要点:
(1)掌握数据库设计的基本步骤。
(2)熟悉需求分析过程。
(3)掌握数据库设计的概念结构设计。
(4)掌握数据库设计的逻辑结构设计。
(5)了解数据库的物理设计。
(6)掌握E-R图设计、E-R图向关系模式的转换、及优化方法。
(7)掌握索引的概念、分类、基本方法。
;10.1数据库设计概述
10.2需求分析
10.3概念结构设计
10.4逻辑结构设计
10.5数据库的物理设计
10.6数据库实施
10.7数据库运行与维护
10.8小结
;10.4逻辑结构设计(重点);
※关系模型的逻辑结构是一组关系模式的集合。
※目标:将实体、实体的属性和实体之间的联系转换为关系模式。;10.4.1E-R模型向关系模型的转换
1、转换原则及具体方法:
;实例:部门与经理:1:1联系
各实体属性
部门:部门号、部门名称
经理:工号、姓名、性别、出生年月。
联系的属性:任期
A、联系转换为独立的关系模式:
部门(部门号,部门名称)
经理(工号、姓名、性别、出生年月)
负责(部门号,工号,任期)
B、与任一方关系模式合并:
部门(部门号,部门名称,工号,任期)
经理(工号、姓名、性别、出生年月);2)1:m联系:
A、转换为独立的关系模式
属性=两关联实体各自的主码+[联系本身的属性]
主码=“m”方实体主码的主码。
B、将为“1”方的实体的主码(作为外码)与联系属性一并加入“m”方实体。
合并后,码不变。
;3)m:n联系:须单独建立一个关系模式。
属性=两关联实体各自的主码+[联系本身的属性]
主码=两关联实体主码的组合。
4)同一实体之间的1:m联系
在该实体对应的关系模式中加入为“1”实体的主码和联系的属性。
;实例:;
关系模式为:
员工(工号,姓名,性别,出生年月,经理工号,民意测验)。
5)两实体间的弱实体联系
将被依赖实体的主码纳入弱实体中,作为弱实体的主码或主码中的一部分。
;员工;6)超类和子类的转换
超类、子类实体可转换为一个关系,并将超类实体的主码加到子类实体中。
实例:
;该E-R模型转换为关系模式为:
员工(职工号,姓名,性别,出生年月,参加工作时间,部门号)
部门经理(职工号,学历,级别,岗位津贴)
管理员(职工号,职务,职称)
工程师(职工号,学历,专业职称)
; 为方便查询,还可在超类实体中增加一个指示属性,根据指示的值直接查询子类实体表。
员工(职工号、姓名、性别、出生年月,参加工作时间,部门号,员工类别)
7)同一实体间的m:n联系
须单独建立一个关系模式。
属性=两关联实体各自的主码+[联系本身的属性]
主码=两关联实体主码的组合。
注:由于“联系”仅涉及一个实体,加入的主码要取不同的名字。;实例:;9)三个或三个以上实体间的m:n联系
须单独建立一个关系模式。
属性=所联系的各实体的主码+[联系本身的属性]
主码=关联实体主码的组合。;实例:;该E-R模型转换为关系模式为:
;综合实例:;各实体的属性为:
车间:车间号、车间主任姓名、地址和电话;
工人:职工号、姓名、年龄、性别、工种;
工厂:工厂名、厂长名;
产品:产品号、产品名、型号、价格;
零件:零件号、零件名称、重量、价格;
仓库:仓库号、仓库主任姓名、电话;
家属:家属姓名、亲属关系。; ※将E-R模型转换为关系模式为:;10.4.2向特定的RDBMS的模型转换。(略)
10.4.3关系数据模型的优化
根据应用需要适当地修改、调整数据模型结构。
1、应用关系规范化理论对关系模式进行优化,具体步骤如下:
(1)确定数据依赖:确定每个关系模式内部各个属性之间的数据依赖以及不同关系模式属性之间的数据依赖。
(2)对各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。;(3)确定各关系模式为第几范式。
(4)按照需求分析阶段的需求,确定要对哪些模式进行合并或分解。
采用技术:反规范化
(5)对关系模式进行必要的分解,提高数据操作的效率和存储空间利用率。
两种分解方法:水平分解
垂直分解;2、反规范化 (了解)
一个完全规范化的设计并不总能生成最优的性能,因此通常是先按照3NF设计,如果有性能问题,再通过反规范来解决。
数据库中的数据规范化的优点是减少了数据冗余,节约了存储空间,相应逻辑和物理的I/O次数减少,同时加快了增、删、改的速度,但是对完全规范的数据库查询,通常需要更多的连接操作,从而影响查询的速度。因此,有时为了提高某些查询或应用的性能而破坏规范规则,即反规范。;?是否规范化的程度越高越好?
文档评论(0)