gpt4 book ai didi

mysql - 如何索引 MySQL 中预先存在的数据?

转载 作者:可可西里 更新时间:2023-11-01 08:16:32 27 4
gpt4 key购买 nike

我在导入数据的 MySQL innodb 表上创建了一个索引。该表是在导入表时由 MySQL 创建的。我什么也没做。它只是使用 GUI 导入数据。

然后我尝试添加一个索引:

ALTER TABLE my_table ADD INDEX idx_myindex (some_column);

我总是得到:

查询正常,0 行受影响(0.22 秒)记录:0 重复:0 警告:0

我读了这个问题:

MySql Add Index : 0 Rows Affected

如何让我的表中已经有数据来索引实际影响行的列?我正在使用 innoDB。

我是否需要导出、删除所有数据、重新导入(更新索引)?

最佳答案

MySQL 5.1 及更早版本报告当您创建索引时 N 行受到影响,并且 N 始终是表中的行数。

从 MySQL 5.5.5 开始,他们停止报告该数字,并决定受影响的行对于所有 DDL 语句始终为零。参见 http://bugs.mysql.com/bug.php?id=21818

请放心,创建索引会自动用值填充它。您可以通过在创建索引前后运行 SHOW TABLE STATUS LIKE 'mytable' 来验证这一点。显示的字段之一是 index_length,它会在您添加二级索引后增加。

关于mysql - 如何索引 MySQL 中预先存在的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25407822/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com