我有两个 MySQL 实例。当数据太长时,第一个会在插入时截断字符串。第二个引发错误:
错误 1406 (22001):第 1 行的“xxx”列的数据太长
我希望第二个也能截断数据。 是否有任何 MySQL 设置来管理此行为?
最佳答案
您可以禁用STRICT_TRANS_TABLES
和STRICT_ALL_TABLES
。这允许自动截断插入的字符串。
引自 MySQL 文档。
Strict mode controls how MySQL handles invalid or missing values in data-change statements such as INSERT or UPDATE. A value can be invalid for several reasons. For example, it might have the wrong data type for the column, or it might be out of range. A value is missing when a new row to be inserted does not contain a value for a non-NULL column that has no explicit DEFAULT clause in its definition. (For a NULL column, NULL is inserted if the value is missing.)
关于MySQL 太长 varchar 截断/错误设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48525982/