博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL 数据库索引
阅读量:3891 次
发布时间:2019-05-23

本文共 795 字,大约阅读时间需要 2 分钟。

数据库的索引好比是新华字典的音序表,它是对数据库一列或多列的值进行排序后的一种结构,其目的是提高表中数据的查询速度。MySQL中的索引分为

索引类别
索引种类 说明
普通索引 普通索引是由KEY或者INDEX定义的索引,是基本索引类型,可以创建在任何数据中

唯一索 引       

唯一索引是由UNIQUE定义的索引,该所因所在的字段的值必须唯一
全文索引 全文索引是由FULLTEXT定义的索引,他只能创建在CHAR ,VARCHAR,TEXT类型的字段上
单列索引 单列索引指的是在表中单个字段上创建索引,他可以是普通索引唯一索引,全文索引
多列索引 多列索引指的是在表中多个字段上创建索引,只有在查询条件中使用了这些字段中的第一个字段时,该索引才会被使用,

1、创建索引

以创建普通索引为例:

在创建表t1时,在t1表中id字段上建立索引,SQL语句如下:

CREATE TABLE t1(id INT,                name VARCHAR(20),                socre FLOAT,                INDEX (id));

查看表的结构,结果如下:

 

可以看到表t1的id字段已经创建了一个名称为id的索引,为了查看索引是否被使用我们可以使用EXPLAIN语句进行查看,查询结果如下:

在图中可以看到key和possible_key都为id,这说明id索引已经存在且被使用

2、删除索引

1、使用ALTER TABLE删除索引  其基本语法格式为:

ALTER TABLE 表名 DROP INDEX 索引名

举例删除表t1的索引,首先通过SHOW CREATE TABLE 语句查看表t1的信息,信息如下所示:

可以看到这其中有一个名为id的索引并且指向id字段

删除索引之后执行刚刚的查询语句,结果如下:

可以看到名为id的索引被删除了

 

 

你可能感兴趣的文章
【演歌】加賀の女 歌词翻译
查看>>
東京音頭 (东京音头) 歌词翻译
查看>>
Windows 7 下登录界面里 Ctrl + Alt + Del 无法使用
查看>>
惠山赏菊 & 梅园赏桂
查看>>
[小技巧] cat /proc/modules 显示的地址为 0
查看>>
[游戏] chrome 的小彩蛋
查看>>
napi
查看>>
_GNU_SOURCE和__USE_GNU的差别
查看>>
Linux 有了 “DTrace”
查看>>
Linux 系统中僵尸进程
查看>>
一个 2 年 Android 开发者的 18 条忠告
查看>>
标志性文本编辑器 Vim 迎来其 25 周年纪念日
查看>>
[小技巧] chrome 的 vim 插件
查看>>
在 Linux 中查看你的时区
查看>>
[小技巧] [trac] Fix AttributeError: 'NullTranslations' object has no attribute 'add'
查看>>
[小技巧] Mac OS X上键盘的键位重映射
查看>>
Java对Oracle中Clob类型数据的读取和写入
查看>>
Spring中Quartz的配置
查看>>
MyBatis 防止 % _ sql 注入攻击 解决方法
查看>>
plsql oracle 无法解析指定的连接标识符
查看>>