开发者社区> 晚来风急> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

MySQL数据库优化技术之数据库表的设计

简介:
+关注继续查看
三范式介绍
  表的范式:只有符合的第一范式,才能满足第二范式,进一步才能满足第三范式。
  1、第一范式:
  表的列具有原子性,不可再分解。只要是关系型数据库都自动满足第一范式。
  数据库的分类:
  关系型数据库:MySQL/ORACLE/Sql Server/DB2等
  非关系型数据库:特点是面向对象或者集合
  nosql数据库:MongoDB(特点是面向文档)
  2、第二范式:
  表中的记录是唯一的,就满足第二范式。通常我们设计一个主键来实现。
  主键一般不含业务逻辑,一般是自增的;
  3、第三范式:
  表中不要有冗余数据,即如果表中的信息能够被推导出来就不应该单独的设计一个字段来存放;对字段冗余性的约束,要求字段没有冗余。
  如下表所示,符合三范式要求:
  student表
  class表
  如下表所示,不符合三范式要求:
  student表
  class表
  反三范式案例:
  一个相册下有多个图片,每个图片有各自的浏览次数,相册有总的浏览次数。
  相册浏览表
  图片表:
  如果相册浏览表没有适当的冗余,效率有影响。
  冗余比较可以得出一个结论:1对N时,冗余应当发生在1的一端。

最新内容请见作者的GitHub页:http://qaseven.github.io/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
基于springboot+mysql+redis+bootstrap的精美个人技术博客网站
基于springboot+mysql+redis+bootstrap的精美个人技术博客网站
0 0
《MySQL 技术大全:开发、优化与运维实战》电子版地址
MySQL 具有小巧、灵活和免费等特性,这使得它越来越多地被用于企业的实际开发中。 特别是 MySQL 数据库的开源特性,更使它得到了广泛应用。程序员要想进入 MySQL 开发 领域,除了需要有扎实的编程基础外,还需要掌握 SQL 语句的编写,熟悉 MySQL 数据库的 优化和运维,了解 MySQL 数据库的常见故障和解决方案,这样才能在竞争日益激烈的数据 库领域提高竞争力,进而实现自身的价值。
0 0
《阿里云 AnalyticDB MySQL版技术白皮书》电子版地址
阿里云 AnalyticDB MySQL版技术白皮书(1)
0 0
(一)MySQL_数据库概述技术总结
简介:MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,2008年被Sun公司收购,2009年Sun 被Oracle收购。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
0 0
技术杂谈 | Mysql统计近30天的数据,无数据的填充0
Mysql统计近30天的数据,无数据的填充0
0 0
MySQL技术大全读书笔记:MySQL数据类型【定点数类型】
MySQL技术大全读书笔记:MySQL数据类型【定点数类型】
0 0
前沿分享|阿里云数据库资深技术专家 姚奕玮:AnalyticDB MySQL离在线一体化技术揭秘
本篇内容为2021云栖大会-云原生数据仓库AnalyticDB技术与实践峰会分论坛中,阿里云数据库资深技术专家 姚奕玮关于“AnalyticDB MySQL离在线一体化技术揭秘”的分享。
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
MySQL 技术大全:开发、优化与运维实战
立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进
立即下载
阿里云 AnalyticDB MySQL版技术白皮书(1)
立即下载