错误代码:1406 - MySQL 中的数据截断
尝试执行以下操作时会出现“错误代码:1406。数据对于列来说太长”将数据插入 MySQL 表,其中数据超过为列数据定义的最大长度type.
在提供的示例中,TESTcol 列的数据类型为 VARCHAR(45),我们尝试插入一个长度为 47 个字符的值。这超出了列的宽度 45 个字符。
解决方案
要解决此问题,请确保插入的数据不超过列数据允许的最大长度类型。在这种情况下,我们需要将数据截断为 45 个字符。
替代方法
虽然 MySQL 默认情况下会截断数据,但可以通过更改来禁用此行为SQL模式不使用STRICT。这可以通过修改 my.ini 文件或运行以下 SQL 查询来完成:
SET @@global.sql_mode= '';
但是,不建议禁用 STRICT 模式,因为它可能会导致潜在的数据完整性问题。相反,最好确保插入的数据符合定义的列宽。
以上是如何解决 MySQL 错误代码 1406:数据截断?的详细内容。更多信息请关注PHP中文网其他相关文章!