一、在非LINUX环境下
有些开发的小伙伴可能会发现,有时在线上的插入数据,还是没问题的,但是一到了本地或者换了个环境写入数据时会提示:xxx字段
doesn't have a default value 的错误,
其实这是mysql版本对数据的严格要求有关
解决办法:
1 、在数据库中对报错的字段设置一个默认不为空的值,例如:0,或者设置为 null
2 、在
mysql的安装目录------->找到
my.ini配置文件,找到
“
sql-mode”或者
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
修改为
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
然后重启MYSQL
如图(注意,如果前面有“;”的要去掉)
二、在线上LINUX服务器下
在LINUX(LNMP环境)中,mysql的配置文件名叫:my.cnf,如果不知道在哪,可以用locate my.cnf查找,如果没找到,试试updatedb,然后再locate my.cnf,如下图,
发现有两个,LNMP安装包,说/etc/my.cnf才是mysql的配置文件,但改这个,在/etc/my.cnf是无效的
只有在/usr/local/mysql/my.cnf下才有sql-mode这个参数
vi /usr/local/mysql/my.cnf 如下:
按照第一步修改即可
转载请注明原文地址: https://ju.6miu.com/read-13027.html