mysql怎么一次删除表里多个索引

mysql怎么一次删除表里多个索引,第1张

只能一个个删除:

alter

table

表名

drop

index

索引

所以不想每次只删除一个所以然后再重建一次索引,我想一次性删除那些多余的索引,这样索引只需要重建一次

----------------------

你这话有问题.说明你对其机制理解有误.

mysql下不同存储引擎索引的组织方式有点不同的

如果你是myisam,可以一个个直接删除

如果你是innodb的,则应先删除非主键索引,到最后才删除主键索引

第一步,创建数据库表t_tree_info,命令如下:

create table t_tree_info(

id int(8),

tno int(4),

tname varchar(20),

tdesc varchar(100)

)

如下图所示

第二步,向表里插入3条数据,插入后查看表记录,如下图所示:

第三步,创建数据库索引tree_name,命令如下:

create index tree_name on t_tree_info (tname(20))

如下图所示:

第四步,查看数据库表索引,利用show命令

show index from t_tree_info

如下图所示:

第五步,重建索引,利用repari命令

repair table t_tree_info quick

如下图所示:

第六步,索引创建好了,在不使用该索引时,可以删除

drop index tree_name on t_tree_info

如下图所示:

mysql中如何查看和删除唯一索引。

查看唯一索引:

show

index

from

mytable//mytable

是表名

查询结果如下:

查询到唯一索引后,如何删除唯一索引呢,使用如下命令:

alter

table

mytable

drop

index

mdl_tag_use_ix//mdl_tag_use_ix是上表查出的索引名,key_name


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7141007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存