大家好, 我是上白书妖!
知识源于积累,登峰造极源于自律
今天我根据以前所以学的一些文献,笔记等资料整理出一些小知识点,有不当之处,欢迎各位斧正
运行mysql产生数据sql语句报错,网上总结两种解决方式
报错日志:
1 | [Err] 1292 - Incorrect date value: '0' for column 'v_birthday' at row 1 |
截图图示:

我认为原因是:
1 2 3 4 5 6 7 8 9 10 11 | SQL MODE对日期和时间行为的影响,某些版本数据库 (5.0.41-community-nt)插入 date 类型的字段数据是 "" 空时,会报这种错误 在MaxDB中,TIMESTAMP的概念非常不同。 随着MySQL AB致力于在MaxDB和“普通” MySQL之间实现更大的集成, 您现在可以在MAXDB模式下运行MySQL。在这种模式下, 所有TIMESTAMP字段都被视为普通的DATETIME字段。 让我们运行与之前运行的命令相同的命令, 但是这次是在MAXDB模式下运行。 仅针对我们正在运行的特定连接, 我们将更改为MAXDB模式(及其后的后续模式)。 退出并重新连接将恢复所有默认设置。 |
参考文章:
https://www.databasejournal.com/features/mysql/article.php/10897_3577131_2/Date-and-Time-in-MySQL-5.htm
https://blog.csdn.net/testcs_dn/article/details/39670421
解决方式1:
1 | SET SESSION sql_mode=NO_ZERO_IN_DATE; |
图示:

解决方式2:
https://blog.csdn.net/testcs_dn/article/details/39670421
上白书妖结束寄语:
知识源于积累,登峰造极源于自律