Out of range value adjusted for column

来源:互联网 发布:prim算法和dij算法区别 编辑:程序博客网 时间:2024/05/07 21:10

MySQL升级到5.0.17后,在执行sql语句
mysql:#1264 - Out of range value adjusted for column 'ID' at row 1

INSERT INTO `news` (`ID`, `Title`, `Content`) VALUES ('', '标题', '正文');
时出现错误:
#1264 - Out of range value adjusted for column 'ID' at row 1

原因:
新版本的MySQL对字段的严格检查。

解决方法(两种方法任选一种即可):
1、修改my.ini,将sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
改为sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"。也就是去掉STRICT_TRANS_TABLES 这个东东就好了,然后重新启动MySQL。推荐这个方法。下面个方法比较麻烦,会给以后的编程带来麻烦。。。不推荐,但是还是在这里说一下。
2、在执行sql语句前,先执行以下语句:
mysql_query("set sql_mode=''");