MySQL General error: 1364 Field 'XXX' doesn't have a default value

向数据库中插入数据时报了以上错误,其原因为: MySQL使用了严格验证方式

解决办法

  • mysql设置的问题,有 my.ini 的就找这个文件,没有的就找 my.cnf(这个一般都在 /ect/my.conf
  • 直接把 [mysqld] 模块下的 sql-mode 模式改变下,找到sql-mode,然后把这句删掉,改成:
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES  ;;(逗号前后禁止有空格)
    
  • 重启数据库

xampp 中MySQL数据库的设置方式如下:

sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION
log_bin_trust_function_creators=1

character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

参考网址

posted @   opencoder  阅读(71)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示