韩顺平 Mysql数据库优化(二) 数据库(表)设计
2013-07-11 13:52
411 查看
第 2 章Mysql数据库(表)设计我们的表要满足1NF 基础上,才可以谈满足2NF, 目前最高级6NF,对PHP网站说,我们只要满足3NF。1.1数据库的分类1.1.1关系型数据库比如mysql, oracle, sql server ,postgresql,informix,DB21.1.2非关系型数据库面向对象和集合数据库.1.1.3介于关系型和非关系型数据库间mongodb数据库面向文档
2.2 1NF所谓1NF:属性(列)具有原子性,不可在分割, 还有就是把同一张表不可以有两个相同列.2.3 2NF所谓2NF: 说表的记录具有唯一性., 即不能出现完全相同的两条记录.一般说,通过设置主键即可.☞注意;主键最好是非业务逻辑主键,使用自增长. 2.4 3NF3NF要保证数据没有冗余.即如果数据可能通过显示或者隐式的推导出,就不要单独设计一列.
比如下图就是满足3NF:
但是说明; 有时我们设计表的时候,可能会使用反3NF.,举例:
☞上面的相册表的设计就使用到了反3NF,但是他提高了效率
点击观看本章节视频讲解: http://www.tudou.com/programs/view/0Kj4sBsR3eI/ 未完待续...
本文出自 “韩顺平的技术专栏” 博客,请务必保留此出处http://hanshunping.blog.51cto.com/7532264/1246383
2.2 1NF所谓1NF:属性(列)具有原子性,不可在分割, 还有就是把同一张表不可以有两个相同列.2.3 2NF所谓2NF: 说表的记录具有唯一性., 即不能出现完全相同的两条记录.一般说,通过设置主键即可.☞注意;主键最好是非业务逻辑主键,使用自增长. 2.4 3NF3NF要保证数据没有冗余.即如果数据可能通过显示或者隐式的推导出,就不要单独设计一列.
比如下图就是满足3NF:
但是说明; 有时我们设计表的时候,可能会使用反3NF.,举例:
☞上面的相册表的设计就使用到了反3NF,但是他提高了效率
点击观看本章节视频讲解: http://www.tudou.com/programs/view/0Kj4sBsR3eI/ 未完待续...
本文出自 “韩顺平的技术专栏” 博客,请务必保留此出处http://hanshunping.blog.51cto.com/7532264/1246383
相关文章推荐
- 韩顺平 Mysql数据库优化(二) 数据库(表)设计
- MYSQL数据库设计注意事项--数据库优化
- 运维角度浅谈MySQL数据库优化一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方
- MySQL数据库优化技术之数据库表的设计
- 转帖:30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
- 小温谈数据库优化--数据设计篇(转)
- Mysql优化2-数据库表设计
- 30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
- 数据库权限优化,权限设计BigInteger
- 30多条mysql数据库优化方法,千万级数据库记录查询轻松解决
- MYSQL数据库设计和数据库设计实例(一)
- mysql_数据库设计类型选择及优化
- 数据库调优教程(十三) MySQL数据库其他优化方法
- 数据库学习--mysql数据库sql优化原则
- 数据库优化设计方案
- 关于ZFS和数据库存储性能的优化设计
- 小温谈数据库优化--数据设计篇
- 【系统性能优化】(二)数据库设计
- 数据库设计优化经验谈(转载)
- 数据库schema设计与优化