第5章 简谈数据库设计
1.数据库设计的任务,内容,特点:
(1)广义的数据库设计,是指建立数据库及其应用系统,包括选择合适的计算机平台和数据库管理系统、设计数据库、以及开发数据库应用系统等.
(2)狭义的数据库设计,是指根据一个组织的信息需求、处理需求和相应的数据库支撑环境(主要是数据库管理系统DBMS),设计出数据库,包括概念结构、逻辑结构和物理结构。其成果主要是数据库。
(3)数据库设计有两种不同的方法:一种是以信息需求为主,兼顾处理需求,称为面向数据的设计方法,一种是处理需求为主,兼顾信息需求,称为面向过程的设计方法。
优缺点:第一种:可以比较好的反映数据的内存数据,既可以满足当前应用需求,也可以满足潜在需求。
第二种:初始阶段可能比较满足,但随着应用的发展和变化,需要进行很大的改动,设计,以满足实际需求。在实际应用中,对于用户的数据是变动的,所以一般采用面向数据的设计方法。
2.数据库设计的成果:(1)数据库模式;(2)数据库为基础的典型应用程序,最基本的成果是数据库模式。
3.数据库设计的特点:(1)复杂性。(2)反复性,(3)试探性,(4)分布进行。
4.数据库方法学的指导原则:(1)可以在短时间内,合理的工作量,产生有实用价值的数据库结构。(2)具有足够的灵活性和通用性,可以供具有不同经验的人使用,使用与于不同数据模型的DBMS限制。
5.规范化的设计方法:新奥尔良法,它将常见的数据库设计分为四个阶段:需求分析,概念分析,逻辑分析,物理分析。
基于E-R模型的数据库设计方法,基于3NF的设计方法。
数据库设计的步骤:
1:需求分析:
需求分析阶段,主要是准确收集用户信息需求和处理需求,并对收集的结果进行整理和分析,形成需求说明。需求分析是整个设计活动的基础,也是最困难和最耗时的一步。如果需求分析不准确或不充分,可能导致整个数据库设计的返工。
2:概念设计:
概念结构设计是数据库设计的重点,对用户需求进行综合、归纳、抽象,形成一个概念模型(一般为ER模型),形成的概念模型是与具体的DBMS无关的模型,是对现实世界的可视化描述,属于信息世界,是逻辑结构设计的基础。
3:逻辑结构设计阶段:
逻辑结构设计是将概念结构设计的概念模型转化为某个特定的DBMS所支持的数据模型,建立数据库逻辑模式,并对其进行优化,同时为各种用户和应用设计外模式。
4:物理设计:
物理结构设计是为设计好的逻辑模型选择物理结构,包括存储结构和存取方法,建立数据库物理模式(内模式)。
5: 实施和维护阶段:
实施阶段就是使用DLL语言建立数据库模式,将实际数据载入数据库,建立真正的数据库;在数据库上建立应用系统,并经过测试、试运行后正式投入使用。维护阶段是对运行中的数据库进行评价、调整和修改。
需求分析工具:
1:数据流图和数据字典。
2:UML统一建模语言:用例,静态,行为,实现图。
概念设计方法,步骤:
(1)自顶向下。
(2)自底向上。
(3)逐步扩张。
(4)混合策略。
E-R图设计方法:
是一种广泛采用的概念模型设计方法。表示方法如下:
1,实体。
2,属性。
3,联系。
UML设计方法:
UML类图与E-R图的区别:
逻辑结构步骤:
1.将概念模型结构转化为一般的关系,网状,层次模型。
2.将转化来的关系,网状,层次模型向特定的DBMS支持下的数据模型转化。
3.对数据模型继续优化。
1 E-R模型向关系模型的转换规则:
(1)实体类型的转换
将每个实体类型转换成一个关系模式,实体的属性即为关系的属性,实体标识符即为关系的键。
(2)联系类型的转换
1)实体间的联系是1:1
可以在两个实体类型转换成两个关系模式中的任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。
2)如实体间的联系是1:N
则在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性。
3)如实体间的联系是M:N
则将联系类型也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。
E-R模型向关系模型的转换规则示例
E-R模型向关系模型的转换规则示例
E-R模型向关系模型的转换规则示例
2 三元联系转换
1:1:1可以在三个实体类型转换成的三个关系模式中任意一个关系模式的属性中加入另两个关系模式的键(作为外键)和联系类型的属性
1:1:N在N端实体类型转换成的关系模式中加入两个1端实体类型的键(作为外键)和联系类型的属性
1:M:N将联系类型也转换成关系模式,其属性为M端和N端实体类型的键(作为外键)加上联系类型的属性,而键为M端和N端实体键的组合
M:N:P将联系类型也转换成关系模式,其属性为三端实体类型的键(作为外键)加上联系类型的属性,而键为三端实体键的组合