PRIMARY KEY & UNIQUE(主键、唯一索引)

本文深度解析了MySQL中的主键(PRIMARY KEY)和唯一索引(UNIQUE)的概念及作用。主键是表中的唯一标识,不允许为空,一张表只能有一个主键;唯一索引允许空值,但索引列的值必须唯一。索引分为B-tree和Hash两种存储结构,前者是InnoDB默认的,后者在特定场景下提供快速定位。合理使用索引能显著提升查询效率,但过多的索引会影响数据维护速度和存储空间。
摘要由CSDN通过智能技术生成

这里是修真院后端小课堂,每篇分享文从

【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】

八个方面深度解析后端知识/技能,本篇分享的是:

【PRIMARY KEY & UNIQUE(主键、唯一索引)】

PRIMARY KEY & UNIQUE(主键、唯一索引)
1.背景介绍

概念

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。

MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。

不建立索引的话,MySQL执行查询会从数据表的第一行开始查直到查询想要的数据结果。
2.知识剖析

索引的分类–单列来区分

1).普通索引–这是最基本的索引,它没有任何限制

2).唯一索引–索引列的值必须唯一,但允许有空值;如果是组合索引,则列值的组合必须唯一

3).主键索引–列值唯一,非空,一个数据表只能有一个主键

4).组合索引:将数据表中多个列建到一个索引中,MySQL组合索引遵循“最左前缀”原则,

就是说你的查询条件语句里必选包含组合索引第列的值才能使用

改组合索引,例如在某个数据表中为user,name,age三个列建立组合索引,

查询语句里必须有where user*才会调用这个索引。

索引的分类(存储结构)(InnoDB)

B-tree

mysql数据库中主键、唯一、普通、全文都是采用b-tree数据结构

在InnoDB中,

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值