MySql数据库报错SQLSTATE[HY000]: General error: 1364 Field ‘xxxxx‘ doesn‘t have a default value解决方案

在网站上传文件时,一直报错无法上传

SQLSTATE[HY000]: General error: 1364 Field 'xxxxx' doesn't have a default value

后来发现是配置文件中有一个值默认出错

最终找到办法,就是mysql设置的问题,有my.ini的就找这个文件,没有的就找my.cnf(这个一般都在/ect/my.conf

图片[1]-MySql数据库报错SQLSTATE[HY000]: General error: 1364 Field ‘xxxxx‘ doesn‘t have a default value解决方案-乾兴网

然后打开MySql配置文件

图片[2]-MySql数据库报错SQLSTATE[HY000]: General error: 1364 Field ‘xxxxx‘ doesn‘t have a default value解决方案-乾兴网

然后找到[MySql]

然后找

sql-mode=STRICT_TRANS_TABLESNO_ENGINE_SUBSTITUTION
问题原因: 主要是MySQL使用了严格验证方式:

解决方法: 直接把sql-mode模式改变下

这个可能你我的不相同,你只要找到sql-mode 就好

然后把这句删掉,改成:

然后找到[MySql]

然后找

sql-mode=STRICT_TRANS_TABLESNO_ENGINE_SUBSTITUTION
问题原因: 主要是MySQL使用了严格验证方式:

解决方法: 直接把sql-mode模式改变下

这个可能你我的不相同,你只要找到sql-mode 就好

然后把这句删掉,改成:

sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

然后在重启数据库

© 版权声明
THE END
喜欢就支持一下吧
点赞9赞赏 分享