欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用Mysql5.x以上版本出现报错#1929 Incorrect datetime value: '''' for column ''createtime''

程序员文章站 2022-08-27 19:10:00
我的MySQL安装后,保存删除表数据总是出现#1929 Incorrect datetime value: '' for column 'createtime' 的报错提醒...

我的MySQL安装后,保存删除表数据总是出现#1929 Incorrect datetime value: '' for column 'createtime' 的报错提醒,导致不能删除表里数据;

原因分析:

5以上的版本如果时期时间是空值应该要写NULL;

官方解释说:得知新版本mysql对空值插入有"bug",

要在安装mysql的时候去除默认勾选的enable strict SQL mode

那么如果我们安装好了mysql怎么办了,解决办法是更改mysql中的配置 my.ini

解决方法:

修改my.ini配置文件,建议修改前新备份下,

my.ini中查找sql-mode

我的MySQL版本为5.7.9,默认为:

sql-mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER"

将红色标注的NO_ZERO_DATE,NO_ZERO_IN_DATE,删掉保存重启mysql即可;

如果版本低的话默认可能是:

默认为sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION",

将红色标注的STRICT_TRANS_TABLES,删掉保存重启mysql即可;

以上所述是小编给大家介绍的使用Mysql5.x以上版本出现报错#1929 Incorrect datetime value: '''' for column ''createtime''的快速解决方法,希望对大家有所帮助