Incorrect integer value: ''for column 'id' at row 1问题请指定列名
2013-09-23 13:14
776 查看
最近在写个查询 插入语句的时候 我是这么写的
还以为是主键出现问题,后来百度搜下原来是mysql_error() , 就报
Incorrect integer value: '' for column 'id' at row 1 这个错误
一般我们是认为应该没错误的。后来查了下MYSQL的资料。发现5以上的版本如果是空值应该要写NULL
这种问题一般mysql 5.x上出现。我用的mysql5.1
官方解释说:得知新版本mysql对空值插入有"bug",要在安装mysql的时候去除默认勾选的enable strict SQL mode
那么如果我们安装好了mysql怎么办了,解决办法是更改mysql中的配置 my.ini
my.ini中查找sql-mode,
默认为
将其修改为
重启mysql后即可
<!-- 自动生成id策略 --> <insert id="addAccount" useGeneratedKeys="true" keyProperty="id" parameterType="account"> <selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id"> SELECT LAST_INSERT_ID() </selectKey> insert into account values(#{id},#{username},#{password},#{status}) </insert>
还以为是主键出现问题,后来百度搜下原来是mysql_error() , 就报
Incorrect integer value: '' for column 'id' at row 1 这个错误
一般我们是认为应该没错误的。后来查了下MYSQL的资料。发现5以上的版本如果是空值应该要写NULL
这种问题一般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后即可
相关文章推荐
- 解决Incorrect integer value: '' for column 'id' at row 1的方法
- 解决Incorrect integer value: '' for column 'id' at row 1的方法
- 解决Incorrect integer value: '' for column 'id' at row 1的方法
- 解决Incorrect integer value: '' for column 'id' at row 1的方法
- java.sql.SQLException: Incorrect integer value: '' for column 'id' at row 1
- 解决Incorrect integer value: '' for column 'id' at row 1
- 解决Incorrect integer value: '' for column 'id' at row 1的方法
- 解决Incorrect datetime value: '' for column 'time' at row 1的问题
- mysql问题 Incorrect string value:"/ / / / /"for column'trurname' at row 1
- ERROR 1366 (HY000): Incorrect string value: '\xC6\xF4\xD3\xC3' for column 'name' at row 1
- ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column XXX at row 1
- Mysql 插入中文错误:Incorrect string value: '\xE7\xA8\x8B\xE5\xBA\x8F...' for column 'course' at row 1
- Warning (Code 1366): Incorrect string value: '\' for column 'msg' at row 1的解决办法
- 1366 - Incorrect string value: '\xE4\xB8\xAD\xE6\x96\x87' for column 'cName' at row 1
- ERROR 1366 (HY000): Incorrect string value: '\xE5\xB8\x82' for column 'address' at row 1
- MySQL 执行插入操作时报1366 - Incorrect string value: '\xE4\xB8\xAD\xE6\x96\x87' for column 'name' at row 1
- Incorrect string value: '\xC2\x8B\xC3\xA8\xC2\xAF...' for column 'name' at row 1
- mysql异常1366 - Incorrect decimal value: '' for column '' at row -1处理办法
- 中文写入数据库乱码及Incorrect string value: '\xF0\x9F...' for column 'XXX' at row 1解决
- 关于mysql数据库“Incorrect string value: '\xFF\xFE\x0DNSb...' for column 'note' at row 1”错误