扩大
缩小
  

二十、数据库设计

一、数据库设计的重要性

在系统研发中,数据库作为数据的保存介质,那么数据库如何保存业务数据。这就需要开发者来设计
了。当数据库比较复杂(如数据量大,表较多,业务关系复杂)时:
1、良好的数据库设计可以:
节省数据的存储空间
能够保证数据的完整性
方便进行数据库应用系统的开发
2、糟糕的数据库设计
数据冗余、存储空间浪费
数据更新和插入的异常
数据库设计对于开发者来说,是很重要的一块。

二、数据库的生命周期

2.1 需求分析阶段

此阶段在软件项目开发周期中的需求分析阶段进行)这个阶段主要是收集并分析用户的业务和数据处理
需求
收集信息(我们需要与数据的创造者和使用者进行访谈。对访谈获得的信息进行整理、分析,并撰
写正式的需求文档。需求文档中需包含:需要处理的数据;数据的自然关系;数据库实现的硬件环
境、软件平台等;)
标识对象
标识每个对象的属性
标识对象之间的关系

2.2 逻辑设计阶段

此阶段在软件项目开发周期中的概要设计和详细设计阶段进行,使用ER或UML建模技术,创建概念数
据模型图,展示所有数据以及数据间关系。最终概念数据模型必须被转化为范式化的表。
a. 绘制E-R图
b. 将E-R图转换为表格
c. 应用三大范式规范化表格

2.3 物理设计阶段

根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措
施,对具体的应用任务选定最合适的物理存储结构(包括文件类型、索引结构和数据的存放次序与位逻
辑等)、存取方法和存取路径等。这一步设计的结果就是所谓“物理数据库”。物理设计阶段遵循以下
要求
a. 数据库物理设计的目标是尽可能优化性能。
b. 物理设计阶段,表结构可能需要进行重构来满足性能上的需求,这被称为反范式化。
c. 反范式化。
d. 实现和维护阶段。反范式化的步骤包括
1. 辨别关键性流程,如频繁运行、大容量、高优先级的处理操作
2. 通过增加冗余来提高关键性流程的性能
3. 评估所造成的代价(对查询、修改、存储的影响)和可能损失的数据一致性
实现和维护阶段
1. 当设计完成之后,使用数据库管理系统(DBMS)中的数据定义语言(DDL)来创建数据结构。
2. 数据库创建完成后,应用程序或用户可以使用数据操作语言(DML)来使用(查询、修改等)该
数据库。
3. 一旦数据库开始运行,就需要对其性能进行监视。当数据库性能无法满足要求或用户提出新的功
能需求时,就需要对该数据库进行再设计与修改。这形成了一个循环:监视 –> 再设计 –> 修改
–> 监视…。

三、设计范式

范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的鼻祖)在上个世纪70年代提
出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所
要参考的一个建议。

3.1 第一范式(1NF)

第一范式强调的是列的原子性,信息存储列不可再分,原子:就是不可再分;
即列不能够再分成其他几列。避免字段中信息冗余。
考虑这样一个表:【联系人】(姓名,性别,电话)
如果在实际场景中,一个联系人有家庭电话和公司电话,那么这种表结构设计就没有达到 1NF。要符合
1NF 我们只需把列(电话)拆分,即:【联系人】(姓名,性别,家庭电话,公司电话)。
第一列具备原子性 第二列不具备原子性
 

3.2 第二范式(2NF)

所谓第二范式,第一,表必须符合第一范式的规则。第二,每列必须依赖主键。
在实际中,一个实体还需要分割成两个表,这样就有两个实体。表头是两个有关系的表中父表的一部
分。表头的信息只需要存储一次,而细节表存储可能有多个实例信息。表头通常保持原表的名称,细节
表通常以表头名称开头,添加一些细节表的信息。

3.3 第三范式(3NF)

第三范式使得表中所有的列不仅仅依赖于某个事物,而是依赖于正确的事物。
有以下三个规则:
1、表必须符合2NF。
2、任何列都不能依赖于非键列。
3、不可以有派生的数据(不建议冗余)。

四、绘制E-R图

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用
来描述现实世界的概念模型图。

4.1、工具准备

PowerDesigner(推荐使用)
ApexSQLLog
Tuning Advisor
SSMSTools
DBDiff
PAL Tool
RMLSqlNexus
SqlNexus
SQLIO和SQLIOSim
 
PowerDesigner 模型设计工具
链接:https://pan.baidu.com/s/1A8KTCMLaSbR0j_vOsPFvwg?pwd=6666
提取码:6666

4.2、生成数据库

a. PowerDesigner生成脚本----通过脚本执行初始化数据库
b. PowerDesigner直接连接数据库服务器,初始化数据库

4.3、ODBC & 如何配置ODBC

开放数据库连接(Open Database Connectivity,ODBC)是为解决异构数据库间的数据共享而产
生的,现已成为WOSA(The Windows Open System Architecture(Windows开放系统体系结构))的
主要部分和基于Windows环境的一种数据库访问接口标准。ODBC 为异构数据库访问提供统一接口,
允许应用程序以SQL 为数据存取标准,存取不同DBMS管理的数据;使应用程序直接操纵DB中的数
据,免除随DB的改变而改变。用ODBC 可以访问各类计算机上的DB文件,甚至访问如Excel 表和ASCI
I数据文件这类非数据库对象。
开始配置:
控制面板----> 系统和安全----->管理工具----> ODBC数据源--->配置用户DSN

4.4、E-R图生成数据库 && 通过数据库生成E-R图

posted @ 2024-03-21 09:51  风筝遇上风  阅读(11)  评论(0编辑  收藏  举报