MySQL太长的varchar截断/错误设置

我有两个MySQL实例。当数据太长时,第一个会在插入时截断字符串。第二个引发错误:

ERROR 1406 (22001): Data too long for column 'xxx' at row 1

我希望第二个也截断数据。是否有任何MySQL设置来管理此行为?

回答:

您可以禁用STRICT_TRANS_TABLESSTRICT_ALL_TABLES。这样可以自动截断插入的字符串。

引用来自MySQL Documantation。

严格模式控制MySQL如何处理数据更改语句(例如INSERT或UPDATE)中的无效或缺失值。值可能由于多种原因而无效。例如,它可能具有错误的列数据类型,或者可能超出范围。当要插入的新行不包含其定义中没有显式DEFAULT子句的非NULL列的值时,缺少值。(对于NULL列,如果缺少该值,则插入NULL。)

参考:MySQL Server SQL模式

以上是 MySQL太长的varchar截断/错误设置 的全部内容, 来源链接: utcz.com/qa/410248.html

回到顶部