如何在没有自动增量的情况下找到表的行错误?

时间:2013-11-21 14:34:19

标签: mysql indexing collation alter-table

我正在尝试将索引列(非唯一)varchar(255)转换为使用utf8mb4_general_ci排序规则。但我一直遇到最大的错误。

所以我尝试将我的varchar长度限制为较低的数字并收到此错误:

Data too long for column at 'table_name' at row 122

但是我的表没有自动增量ID,所以我一直在弄清楚第122行的位置。

我的预感是,我可以截断一些长记录以适应utf8mb4的767密钥长度。但我需要先找到长串。

1 个答案:

答案 0 :(得分:1)

要找到最长的字符串('foo'是你的列名太长了):

SELECT *, char_length(foo)
FROM table_name
ORDER BY char_length(foo) DESC
LIMIT 25