描述
- 进行日期相加,结果例-> 13:12:00 时进行报错。
DATE_FORMAT((SYSDATE()+3),'%Y%m%d %H:%i:%s')
原因
MySQL5.7版本以上,默认设置SQL_Mode模式,在模式里有NO_ZERO_DATE,NO_ZERO_IN_DATE,
存在表示系统里DATE类型字段不能有0值
解决两种办法
-
如果具备系统权限那么直接修改my.ini 配置文件,找到sql_mode行,修改为如下重启mysql即可。
sql_mode = 'STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER'
-
DATE_FROMAT(DATE_ADD(SYSDATE(),INTERVAL 3 DAY),'%Y%m%d %H:%i:%s')