JavaWeb——MySQL-索引(3/3)-操作语法(索引操作语法概述、创建索引、查看索引、删除索引)
目录
索引操作语法概述
创建索引
创建索引语法详解
创建索引示例
查看索引
查看索引语法
查看结果分析
删除索引
删除索引语法
删除索引操作
索引操作语法概述
索引操作语法主要包括创建索引、查看索引和删除索引三部分,是数据库中管理索引的关键操作,对优化查询性能、合理组织数据结构具有重要意义。
创建索引
创建索引语法详解
基本语法结构
CREATE INDEX
语句用于创建索引,其后需指定索引名称,通过ON
关键字明确为哪张表的哪个字段创建索引。语法格式为
CREATE INDEX 索引名 ON 表名(字段名);
索引名自定义,应遵循一定命名规范以便管理和识别,如IDX_表名_字段名
形式。
多字段索引创建
可同时为多个字段创建一个索引,字段间用逗号分隔,语法为
CREATE INDEX 索引名 ON 表名(字段名1, 字段名2,...);
多字段索引在查询条件涉及多个字段组合时能发挥作用,提高查询效率。
唯一索引创建
若创建唯一索引,在CREATE INDEX
前添加UNIQUE
关键字,确保索引字段值唯一,语法为
CREATE UNIQUE INDEX 索引名 ON 表名(字段名);
唯一索引适用于需保证字段值唯一性的场景,如用户表中的用户名字段。
创建索引示例
(以 TB_EMP 表 name 字段为例)
- 索引创建语句编写
为TB_EMP
表的name
字段创建索引,根据命名规范,索引名可设为IDX_EMP_name
,创建语句为
CREATE INDEX IDX_EMP_name ON TB_EMP(name);
- 执行创建操作
在图形化工具(如 IDEA)中,选中上述创建索引语句执行,成功执行后,索引即创建完成,数据库会依据 B + 树结构(MySQL 默认索引结构)为name
字段构建索引数据结构,后续查询该字段数据时,数据库将利用此索引提高查询速度。
查看索引
查看索引语法
使用SHOW INDEX FROM
语句查看表中索引信息,语法为
SHOW INDEX FROM 表名;
执行该语句可获取表所有索引详细信息,包括索引名称、字段、索引类型等,助于了解表索引状况,判断索引是否合理创建及使用。
查看结果分析
(以 TB_EMP 表为例)
查看 TB_EMP 表索引信息
执行语句,
SHOW INDEX FROM TB_EMP;
查询EMP
表索引信息,返回结果包含多条记录,每条记录对应一个索引。
结果中索引解释
- 主键索引(PRIMARY):若表定义了主键(如TB_
EMP
表中的ID
字段),数据库会自动创建主键索引。主键索引用于唯一标识表中每行记录,其性能在所有索引中最高,数据库在执行查询、关联等操作时,常利用主键索引快速定位和操作数据。 - 唯一索引(UNIQUE):若字段设置了唯一约束(如TB_
EMP
表中的user_name
字段),数据库会自动创建唯一索引。唯一索引保证字段值唯一性,除主键索引外,用于确保特定字段在表内不重复,防止插入重复值。 - 自定义索引:除主键索引和自动创建的唯一索引外,还有手动创建的索引(如之前为
name
字段创建的IDX_EMP_name
索引),这些索引根据业务需求创建,用于提高特定查询条件下的查询效率。
删除索引
删除索引语法
使用DROP INDEX
语句删除索引,语法为
DROP INDEX 索引名 ON 表名;
通过指定索引名和表名,准确删除指定表上的索引,删除后,数据库将不再维护该索引相关数据结构,释放存储空间,同时查询涉及该字段时,数据库将无法使用已删除索引优化查询。
删除索引操作
(以删除 TB_EMP 表 name 字段索引为例)
- 编写删除语句
要删除TB_EMP
表name
字段的索引(假设索引名为IDX_EMP_name
),删除语句为
DROP INDEX IDX_EMP_name ON TB_EMP;
- 执行删除操作与验证:在图形化工具中执行删除语句,执行成功后,再次查看
EMP
表索引信息(执行
)可确认SHOW INDEX FROM TB_EMP;
name
字段索引已被删除,确保索引管理操作准确无误。
END
学习自:黑马程序员——JavaWeb课程