Mysql索引(入门)

Posted 自由乐土

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql索引(入门)相关的知识,希望对你有一定的参考价值。

索引事务

看完这篇文章,你将知道什么是索引,为什么要索引,怎么创建使用索引。

一.索引

1.概念

索引是一种特殊的文件,包含着对数据表里的所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引类型,各类索引有各自的数据结构实现。

2.作用

(1)数据库中的表、数据、索引之间的关系,类似于书架上的图书、书籍内容和书籍目录。
(2)索引所起的作用类似于书籍目录,可用于快速定位、检索数据。
(3)索引对提高数据库的性能有很大的帮助。

3.使用场景

当要考虑对数据库表的某列或某几列创建索引,需要考虑一下几点:
(1)数据量大,且经常对这些列进行条件查询。
(2)该数据库表的插入操作,及对这些列的修改操作频率降低。
(3)索引会占用额外的磁盘空间。
反之:如果非条件查询列或经常做插入、修改操作,或磁盘空间不足时,不考虑创建索引。

4.使用

事先准备的student表:

当我们创建主键约束、唯一约束、外键约束时,会自动创建对应列的索引。
查看索引
show index from 表名;

案例:查看学生表已有的索引
show index from student;


创建索引
对于非主键、非唯一约束、非外键的字段,可以创建普通索引。
create index 索引名 on 表名(字段名);

案例:创建学生表,name字段的索引
create index idx_student_name on student(name);

再查看student表的索引:


可以看出新创建的idx_student_name也存在了。

删除索引
语法:drop index 索引名 on 表名;

案例:-- 删除班级表中的name字段的索引
drop index idx_student_name on student;

再查看studen还存在的索引:

以上是关于Mysql索引(入门)的主要内容,如果未能解决你的问题,请参考以下文章

mysql 索引怎么使用

phpmyadmin的MySQL数据库中,主键、索引、唯一,各是啥意思。。?

MySQL外键+唯一索引

mysql 不同表的字段如何创建索引

MySQL的存储引擎(InnoDB与MyISAM)

关于mysql建立临时表的问题(新手入门)