最近在用zend框架,然后装了一个项目,发现注册的时候出现
General error: 1366 Incorrect integer value: '' for column 'user_id' at row 1
发现这个id是自动增长的,感觉很奇怪,找了很多博客,终于发现问题所在。
这种问题一般mysql 5.x上出现,我用的mysql5.1,官方解释说:得知新版本mysql对空值插入有”bug”,要在安装mysql的时候去除默认勾选的enable strict SQL mode,那么如果我们安装好了mysql怎么办了,解决办法是更改mysql中的配置 my.ini
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后即可,那么如果是虚拟主机或者是空间怎么办了。如果你能让空间商帮你改那是最好,如果不能,那你就只能程序改改。都规范一点。空值就写 null 代替吧。
版权声明:本文为zj57356498318原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。