博客
关于我
【数据库】了解设计数据库的步骤
阅读量:320 次
发布时间:2019-03-04

本文共 2368 字,大约阅读时间需要 7 分钟。

一、了解设计数据库的步骤(数据库生命周期较软件长)

Why  设计数据库 ?         *节省数据空间   ---> (数据冗余---数据重复的现象)                                                |                                                |                                          减少冗余的方法:分类         * 保证数据完整性 --->  (数据的准确性)【存在不正确、不准确的数据,数据库失去了完整性】                                                       |                                                       |                                               各种约束(主键、check)          *方便数据库应用系统的开发现实世界(抽取相同实体的数据) ---> 信息世界 ---> 数据库模型图 ---> 数据库                                (建模)    (规范化--范式)==需求分析==:分析客户业务和数据处理需求==概要设计==:设计数据库的E-R模型图,确认数据需求的正确和完整==详细设计==:应用三大范式审核数据库结构==代码编译==:物理实现数据库,代码编译实现应用(运行脚本初始化)==软件测试==:.....==安装部署==:.....(根据日志定点将数据库数据备份恢复)

收集信息 — 标识实体 — 绘制E-R图(E-R概念图转化为关系模型)—

1.收集信息:交谈了解客户需求

2.标识实体:标识数据库要管理的关键对象

标识实体的各自属性
标识实体之间的关系(客房和客人之间由主从对应关系)

3.绘制E-R图

实体— 长方形、(Visio) 关联关系—菱形、属性—椭圆

映射基数关系:一对一、一对多、多对多、(多对一)E-R概念图转化为关系模型:   一对一:1.实体A中主关键字加入到B实体中对应的关系中,若联系有属性一并加入           2.实体B中主关键字加入到A实体中对应的关系中,若联系有属性一并加入           3.建立第三个关系,关系中包含两个实体集的主关键字,若联系有属性一并加入(当关系也有属性时必选)      一对多:1.可以将一的一方实体的主键放入多的一方实体中作为“外键”   多对多:1.必须建立“联系”的单独关系,用来联系双方实体,该关系属性中至少包含两个实体的关键字。   *关系数据库源于关系代数   *外键---波浪线,主键---下划直线

4.数据规范化(范式):

仅有好的RDBMS不足以避免数据冗余,必须建立好的表结构!!!          范式是具有最小冗余的表结构~,依赖函数~          第一范式(1st NF -First Normal Form)                  确保每列的原子性(每一列不可再分的最小数据单元
<最小的原子单元 1nf>
),数据库中的每个表格必须满足的!!! 例:中国北京市 ----> 中国 + 北京 第二范式(2st NF -S.... Normal Form) 在第一范式的基础上,并除主键以外的其他列都依赖于该主键。并且要求每个表只描述一件事。(主键针对分成的表) 例: 房间号 客房状态编号 客房状态 ---> 客房状态名称 客房类型 床位数 客房类型编号 入住人数 ---> 客房类型名称 价格 第三范式(3st NF -T.... Normal Form) 在第二范式基础上,并除主键以外的其他列都不传递依赖于主键。 例: 房间号 客房状态ID 客房状态 ---> 客房状态名称 入住人数 客房类型 床位数 客房类型ID 入住人数 ---> 客房类型名称 价格 价格 床位数 处理数据冗余异常: 更新异常 添加异常 删除异常

5.规范化和性能的关系

通过给定表中添加额外字段,以减少搜索信息的时间
通过给定表中添加计算列,以方便查阅


转载地址:http://crhq.baihongyu.com/

你可能感兴趣的文章
memcache、redis原理对比
查看>>
memset初始化高维数组为-1/0
查看>>
Metasploit CGI网关接口渗透测试实战
查看>>
Metasploit Web服务器渗透测试实战
查看>>
Moment.js常见用法总结
查看>>
MongoDB出现Error parsing command line: unrecognised option ‘--fork‘ 的解决方法
查看>>
mxGraph改变图形大小重置overlay位置
查看>>
MongoDB学习笔记(8)--索引及优化索引
查看>>
MQTT工作笔记0009---订阅主题和订阅确认
查看>>
ms sql server 2008 sp2更新异常
查看>>
MS UC 2013-0-Prepare Tool
查看>>
msbuild发布web应用程序
查看>>
MSB与LSB
查看>>
MSCRM调用外部JS文件
查看>>
MSCRM调用外部JS文件
查看>>
MSEdgeDriver (Chromium) 不适用于版本 >= 79.0.313 (Canary)
查看>>
MsEdgeTTS开源项目使用教程
查看>>
msf
查看>>
MSSQL数据库查询优化(一)
查看>>
MSSQL日期格式转换函数(使用CONVERT)
查看>>