首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改VARCHAR字段的长度后重新生成索引

问更改VARCHAR字段的长度后重新生成索引
EN

Stack Overflow用户
提问于 2019-01-01 22:13:07
回答 2查看 187关注 0票数 1

我的MySQL数据库中有一个InnoDB表。在其中,我有一个字段(不是主键)是VARCHAR(20)。而且它被编入了索引。

但最近,我不得不将大小增加到75。也就是说,VARCHAR(75)

那么,我需要做些什么来重新索引这个字段吗?或者索引是自动更新的,还是不会受到影响?

目前,这个表只包含大约2000行。

另外,如果它是我想要增加大小的主键字段呢?也就是说,假设我的主键是VARCHAR,并且希望增加字段长度。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-01 22:16:37

增加varchar的大小不会影响indicex。您可以继续使用,而无需重新创建索引。

票数 1
EN

Stack Overflow用户

发布于 2019-01-01 22:42:30

更改列定义时,会更新索引。

在对表进行重大更改后,ANALYZE TABLE mytable;始终是一个好主意;它会更新索引统计信息,以便查询规划器能够尽可能好地完成工作。

主要更改包括对索引列的许多插入、删除或更新,以及对表的ALTERing。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53996162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档