接手了一个项目,设计数据库的时候字段全部是不能为空,但是空值又可以插入数据,刚拿过来的时候就提示各种sql语法错误,现记录一下解决办法。
将my.ini中设置:
#sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
改为:sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
如还不行就改为 sql_mode=NO_ENGINE_SUBSTITUTION
如没有则新建,重启服务器在试。
my.ini 所在位置可以在服务里面查看可执行的脚本位置,找到对应的my.ini所在位置例如:
"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.5\my.ini" MySQL55