设计一个好的Mysql数据库
作者:互联网
设计一个好的Mysql数据库
设计数据库的步骤:
1.收集信息
2.标识实体
3.标识每个实体需要存储的详细信息
4.标识实体之间的关系
数据库的设计就是将数据库中的数据实体及这些数据实体之间的关系,进行结构化的过程。
为了避免数据冗余等问题导致对性能的影响
表示实体之间的关系
矩形表示实体集
椭圆形表示属性
菱形表示联系集
数据库设计的第一范式:
数据库表中的所有字段都具有单一属性(即字段不能再分割了)
单一属性的列是由基本数据类型所构成的
设计出来的表都是简单的二维表
数据库设计的第二范式:
第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。
数据库设计的第三范式:
首先要满足第二范式,其次非主属性之间不存在函数依赖。由于满足了第二范式,表示每个非主属性都函数依赖于主键。如果非主属性之间存在了函数依赖,就会存在传递依赖,这样就不满足第三范式。
范式化设计的优缺点
优点:
可以尽量的减少数据冗余
范式化的更新操作比反范式化更快
范式化的表通常比反范式化更小
缺点:
对于查询需要关联多个表
更难进行索引优化
总结:
第一范式就是原子性,字段不可再分;
第二范式就是完全依赖,没有部分依赖;
第三范式就是没有传递依赖;
为什么使用MySQL
MySQL优势
免费
1.小、中型企业难以负担SQLserver和Oracle的高昂费用s
2.部分公司为了未来上市时不出现版权意外
开源
大公司愿意支付Oracle的高昂费用,但是不放心服务器在别人手上
跨平台
MySQL同时支持Windows、Unix、Linux和Mac OS等操作系统
功能强大且使用方便
1.运行速度快
2.可维护性强
3.易用性强
标签:范式,范式化,数据库,Mysql,表中,设计,主键 来源: https://blog.csdn.net/weixin_44502012/article/details/100091104