问题产生
设置了mysql主键自动增长,但因为删除字段的操作导致主键不连续
解决方法
step1:在mapper.xml文件中添加update标签设置自动增长的增量为1
alter table student AUTO_INCREMENT=1;
<!--StudentMapper.xml文件--> <mapper namespace="StudentMapper"> ... ... <update id="alter"> alter table student AUTO_INCREMENT=1; </update> <insert id="insert" parameterType="com.cooooode.bean.Student" > insert into student (name,score) values (#{name},#{score}); </insert> </mapper>
step2: 在sqlSession执行插入语句前先执行更新操作
SqlSession sqlSession = null; try{ sqlSession = ??? sqlSession.update("StudentMapper.alter"); // 先更新 sqlSession.insert("StudentMapper.insert",student);// 后插入 }catch(...){ //TODO }finally{ if(sqlSession != null){ sqlSession.commit(); sqlSession.close(); } }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)