数据库设计
良好的数据库设计
特点
1):节省数据的存储空间
2):能够保存数据的完整性
3):方便进行数据库应用系统的开发
糟糕的数据库设计
特点
1) 浪费存储空间并且效率低下 更新数据和检索数据时会出现许多问题
数据库设计基本步骤
(1).收集信息 ---确定数据库功能
(2).标示对象 ---确定表的数量
(3).标示每个对象需要存储的详细信息 ---确定表的字段
(4).标示对象之间的关系 ---确定主外键关系
e-r图
给E-R图下个定义:E-R图:(Entity-Relationship)实体关系图
E-R图:用于图形化的方式表示数据库的逻辑结构
绘制E-R图
(1).实体:名词 矩形表示事体集合
(2).属性:名词 椭圆形表示属性
(3).关系:动词 菱形表示关系集
映射基数:
(1).1:1
(2).1:N
(3).N:1
(4 ) .N:N
范式
从范式的定义及其规范设计的依据来描述
定义:是具有最小冗余的表结构
注意:范式最高为第5范式、并不是意味着范式越高数据库设计的越好
规范设计
(1) 第一范式(1NF):
确保每一列的原子性。如果每列都是不可再分的最小单位,即满足第一范
式 (注意:不可在拆分是相对的不是绝对的)
(2)第二范式(2NF)
特点:
①:满足第一范式
②:并且除主键以外的其他列,都依赖于该主键
③:要求每个表只描述一件事情 并清除部分依赖
(什么是部分依赖?
当有主合主键 则非主键列只依赖于主合主键的部分列时就存在部分依赖)
(3)第三范式(3NF)
特点:
①:满足第二范式
②:并且所有非主键列直接依赖于主键列
③:消除传递依赖(即:只存在直接依赖关系)
总结:
在项目的需求阶段,
数据库设计需要收集信息、标识实体、标识实体的属性以及标识实体之间
的关系。
在概要设计阶段,
绘制E-R图。
在详细设计阶段,
将E-R图转换为数据库表,并且使用三大范式规范化表的设计。
数据规范化是指
将数据库精简为最简洁的形式
从表中除去任何冗余的列
标识出所有依赖于其他数据的数据