Data truncation: Data too long for column 'column_name'
解决方案:
sessionVariables=sql_mode='NO_ENGINE_SUBSTITUTION'&jdbcCompliantTruncation=false
解释:
-
sessionVariables=sql_mode='NO_ENGINE_SUBSTITUTION'
:这部分定义了会话变量,其中sql_mode='NO_ENGINE_SUBSTITUTION'
设置了MySQL的sql_mode
参数。sql_mode
参数用于设置MySQL服务器的SQL模式,这里设置为NO_ENGINE_SUBSTITUTION
,表示在严格模式下禁用了ENGINE=DEFAULT选项。这意味着如果表类型(例如InnoDB或MyISAM)不可用时,MySQL不会隐式更改表的存储引擎。 -
jdbcCompliantTruncation=false
:这部分是JDBC的一个参数,用于指示当通过JDBC截断字符串时是否严格遵循JDBC规范。如果设置为false
,则JDBC可能会允许截断字符串,而不会抛出DataTruncation
异常。