mysql修改索引

发布时间: 2023-11-21 11:07 阅读: 文章来源:1MUMB993PS

作为一名java程序员,对于mysql的索引相信都不陌生。当我们在数据库表中查询数据时,若数据表没有索引,会逐个遍历表格中的所有数据,要是遇到表的数据很大时,查询就会很耗时。

建立索引就像创建目录一样,索引(Index)是帮助mysql高效获取数据的数据结构,索引可以提高查询效率。

例如:有一张用户表,其中有1百万条记录,存放每个用户的具体信息。表中有个phone的字段记录每个人的手机号码,现在想要根据手机号码查询某个用户的具体的信息。

如果phone字段没有建立索引,那么将从表中第一条记录一条条往下遍历,直到找到该条信息为止。

如果phone字段有建立索引,那么会将该Phone字段,通过一定的方法进行存储,好让查询该字段上的信息时,能够快速找到对应的数据,而不必在遍历1百万条数据了。

但索引也不是越多越好,因为创建的索引也需要占用空间,而且需要维护索引,因此没必要为所有字段创建索引,对于经常需要查询,或数据记录很多的字段可以创建索引。

因为索引是MySQL中比较重点的知识,在面试中出现的频率特别高。所以掌握好索引,无论是求职面试,还是工作,都会有很大的帮助。

今天我们来看看mysql索引的基本操作,创建索引和修改删除、删除索引操作。

-- 创建索引alter table table_name add unique key key_id_type(id, type);create index index_name on table_name(field_name);

创建表时索引一起创建好

create table table_name(id int,user_name varchar(20),index [index_name] (field_name));-- 删除索引alter table table_name drop index key_id_type ;drop index index_name on table_name;-- 修改表引擎

把mysql表的引擎修改为MyISAM引擎

alter table table_nameengine=MyISAM;

把mysql表的引擎修改为innodb引擎

alter table table_name engine=innodb;

关于索引创建的基本操作今天就先到这。

由于笔者水平有限,文中纰漏之处在所难免,权当抛砖引玉,不妥之处,请大家批评指正。

•••展开全文
相关文章