本文共 1109 字,大约阅读时间需要 3 分钟。
mysql insert 有一个时间字段,'0000-00-00 00:00:00'格式为这样。插入的是报错 ERROR 1292 (22007): Incorrect datetime value: '0000-00-00 00:00:00' for column 'return_create_time' at row 1 mysql允许将’0000-00-00’保存为“伪日期”,如果不使用no_zero_date sql模式。
root@localhost :(none)03:38:46>show variables like 'sql_mode';
+---------------+------------------------------------------------------------------------------------------------------------------------------------+ | variable_name | value | +---------------+------------------------------------------------------------------------------------------------------------------------------------+ | sql_mode | strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution | +---------------+-------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
参数中含有: no_zero_date 解决办法: 去掉 no_zero_dateset global sql_mode='strict_trans_tables,no_zero_in_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution';
如果不生效修改配置文件重新启动数据库。
转载地址:https://blog.csdn.net/zhengwei125/article/details/79003563 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!