mysql索引类型和区别是什么意思_mysql主键索引和普通索引之间的区别是什么
索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。MySQL提供多种索引类型供选择:普通索引 、唯一性索引、主键索引 、全文索引等等。下面本篇文章就来给大家介绍一下主键索引和普通索引之间的区别 ,希望对你们有所帮助。
普通索引
普通索引是最基本的索引类型,而且它没有唯一性之类的限制。普通索引可以通过以下几种方式创建:
创建索引,例如CREATE INDEX ON tablename (列的列表);
修改表,例如ALTER TABLE tablename ADD INDEX [索引的名字] (列的列表);
创建表的时候指定索引,例如CREATE TABLE tablename ( [...], INDEX [索引的名字] (列的列表) );
主键索引
主键是一种唯一性索引,但它必须指定为“PRIMARY KEY”。
主键一般在创建表的时候指定,例如CREATE TABLE tablename ( [...], PRIMARY KEY (列的列表) );
但是,我们也可以通过修改表的方式加入主键,例如“ALTER TABLE tablename ADD PRIMARY KEY (列的列表); ”。每个表只能有一个主键。
区别
1、普通索引是最基本的索引类型,没有任何限制,值可以为空,仅加速查询。普通索引是可以重复的,一个表中可以有多个普通索引。
2、主键索引是一种特殊的唯一索引,一个表只能有一个主键,不允许有空值;索引列的所有值都只能出现一次,即必须唯一。简单来说:主键索引是加速查询 + 列值唯一(不可以有null)+ 表中只有一个。
mysql索引类型和区别是什么意思_mysql主键索引和普通索引之间的区别是什么相关推荐
- mysql主键索引需要创建_mysql主键还需要建立索引吗?
mysql主键不需要建立索引,主键具备索引的功能:当创建或设置主键的时候,mysql会自动添加一个与主键对应的唯一索引,不需要再做额外的添加.数据库管理系统对于主键会自动生成唯一索引,所以主键是一个特 ...
- mysql隐式锁定辅助索引_当Mysql - InnoDB行锁遇到复合主键和多列索引-Go语言中文社区...
背景 今天在配合其他项目组做系统压测,过程中出现了偶发的死锁问题.分析代码后发现有复合主键的update情况,更新复合主键表时只使用了一个字段更新,同时在事务内又有对该表的insert操作,结果出现了 ...
- mysql怎么实现生日字段前一个小时提醒_MySql学习笔记(二) 索引的设计和使用...
作为开发人员,数据库的索引是我们再熟悉不过的了.那么实话真的会了吗,在项目开发中随便定义一个int.varchar后边跟个primary key或者加个index就好了么?考虑到这些咋还真的需要看看专 ...
- mysql 主键 聚集索引_MySQL主键索引和聚焦索引
主键索引 主键索引,简称主键,原文是PRIMARY KEY,由一个或多个列组成,用于唯一性标识数据表中的某一条记录.一个表可以没有主键,但最多只能有一个主键,并且主键值不能包含NULL. 在MySQL ...
- mysql主键索引_mysql主键与索引
一.概念: 1.主键(primary key)能够唯一标识表中某一行的属性或属性组.一个表只能有一个主键,但可以有多个候选索引.主键常常与外键构成参照完整性约束,防止出现数据不一致.主键可以保证记录的 ...
- mysql主键创建非聚集索引_什么是聚集索引,非聚集索引,索引覆盖,回表,索引下推...
聚集索引 我们先建如下的一张表 CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',`name` var ...
- mysql主键和唯一索引_mysql 主键和唯一索引的区别
主键是一种约束,唯一索引是一种索引,两者在本质上是不同的. 主键创建后一定包含一个唯一性索引,唯一性索引并不一定就是主键. 唯一性索引列允许空值,而主键列不允许为空值. 主键列在创建时,已经默认为非空 ...
- 两个主键怎么设置tsql_索引该怎么创建?
1.2.索引 B+Tree 结构的特性: ①.B+Tree 只有叶子节点会存储真实的数据,非叶子节点只会存储索引字段值: ②.B+Tree的叶子节点之间使用 双向链表 链接,所以更加适合范围查询和排序 ...
- mysql主键外键_MySQL主键和外键使用及说明
摘自网上一个经典的例子:大哥和小弟 一.外键约束 MySQL通过外键约束来保证表与表之间的数据的完整性和准确性. 外键的使用条件: 1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以 ...
最新文章
- windows10 删除文件 的权限才能对此文件夹进行更改 解决办法
- Android程序label居中
- LESS-Middleware:Node.js 和 LESS 的完美搭配
- 解决Ubuntu14.04 下 E: Encountered a section with no Package: header 问题
- mybatis的入门
- [APIO2018] Duathlon 铁人两项
- Ayoub's function CodeForces - 1301C(组合数学)
- php xml 接口调用,php的SimpleXML方法读写XML接口文件实例解析
- Map,List,Queue,Set和Stack的区别
- 【滤波器】基于matlab GUI FIR+IIR数字滤波器设计【含Matlab源码 324期】
- Word 复制或编辑公式就卡死
- Maven 安装教程详解
- 图扑软件数字孪生民航飞联网,构建智慧民航新业态
- python股票量化投资刑不行_【邢不行|量化小讲堂系列10-Python量化入门】量化投资中如何处理复权、除权问题...
- 深度探索c++对象模型(5):ctor、dtor、copy
- 文档扫描OCR识别_积累
- eclipse快速创建无参和有参构造函数:
- 计算机寸出,电脑显示器长31cm宽23cm是多少寸?
- 苹果xr十大隐藏功能_网上找的一些非常实用的苹果笔记本使用技巧及隐藏功能,收藏了...
- 2018牛客暑假多校A题GPA 01分数规划
热门文章
- 12.Java 面试题整理(JAVA 代码查错)
- Rational Rose学习笔记02:创建用例图
- 编写有效用例电子版_JavaScript ES6代理的实际用例
- 【英语学习】【English L06】U02 Food L1 Food on the menu
- Intel 64/x86_64/IA-32/x86处理器 - SIMD指令集 - SSE扩展(3) - MXCSR寄存器详解
- Android Navigation 组件(基础篇)
- linux内核input子系统解析,ARM Linux内核Input输入子系统浅解
- ajax 解析数组集合,ajax怎样解析json数组并用模板引擎渲染
- 共享单车数据集_共享单车项目数据可视化展示
- centos8 安装geany