问题背景
使用navicat添加过程存储函数时,代码如下:

报错:

原因分析
这是因为当前的MySQL不支持datetime为0的情况。
解决方法
方法一:修改sql_mode
SQL Mode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。

set @@global.sql_mode = "ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
set @@sql_mode = "ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
方法二:日期不要用0值。

执行成功

原创文章,作者:三酷猫,如若转载,请注明出处:https://www.sankumao.com/4466.html