【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
在使用MyBatis进行开发的过程中,当你遇到向某张数据库表中插入一条记录时,出现数据插入不正确,如果自己确定是因为主键的原因,类似如下错误提示:
而你的本意是主键自动增长,那么,可参考如下方法尝试解决:
第一步:在配置中设置主键为自增长(数据库我使用的是MySql)
如果你是使用MyBatis自动生成的插入语句,除了设置上面给出的useGeneratedKeys=”true”之外,还需要将如下图所示红色部分去掉,这是查询主键最大值的一段代码。
如果还未解决,这时你应该检查一下你的数据库表中主键设置,是否为自动增长设置。
可以在sql语句中主键后加上auto_increment.
如果你使用的是工具“Navicat for MySQL”,比如我要设置如图所示中tb-device_basic表的主键为自动增长,点击“设计表”,再将“自动增长”勾中即可,然后再尝试一下。
来源:oschina
链接:https://my.oschina.net/u/781254/blog/466470