我的MySQL数据库中有一个InnoDB
表。在其中,我有一个VARCHAR(20)
字段(不是主键)。并被索引。
但是最近,我不得不将大小增加到75
。也就是说,VARCHAR(75)
那么,我需要做些什么来重新索引该字段吗?还是索引会自动更新或不受影响?
此表目前仅包含约2000行。
此外,如果要增加大小的是PRIMARY KEY字段怎么办?也就是说,假设我的主键是VARCHAR
,并且希望增加字段长度。
答案 0 :(得分:1)
更改列定义时会更新索引。
在对表进行重大更改之后, ANALYZE TABLE mytable;
总是一个好主意;它会更新索引统计信息,以便查询计划者可以尽力而为。
主要更改包括对索引列的许多插入,删除或更新,以及更改表。
答案 1 :(得分:0)
增加varchar的大小不会影响indicex。您可以继续使用而无需重新创建索引。