Error number: 3886; Symbol: ER_COLUMN_CHANGE_SIZE; SQLSTATE: HY000
Message: Could not change column ‘%s’ of table ‘%s’. The resulting size of index ‘%s’ would exceed the max key length of %d bytes.
错误说明:
ER_COLUMN_CHANGE_SIZE:错误代码3886是指当试图更改列的大小时,数据类型必须匹配旧值。
一个常见的案例是用户在MySQL表中尝试更改列的大小时会遇到这个错误。例如,如果一列当前为int(8),用户希望将其改为int(11),则可能会遇到这个错误。
解决方法:
要解决此错误,用户必须在更改列大小之前将其变更为相同的数据类型(在上面的例子中,应将int(8)改为int(11))。此外,用户还应检查其它与此字段有关的索引是否正确,确保更改的字段可以将索引记录道表中。