为什么mybatis获取的序列值和Oracle数据库中的不一致?
请问大佬这种怎么解决呢?
修改了很多次SQL语句和配置文件
这是我的映射文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="test">
<insert id="insertStudent" parameterType="Student">
INSERT INTO STUDENT_TAB(NAME,AGE,SCORE)VALUES(#{name},#{age},#{score})
</insert>
<insert id="insertStudentCache" parameterType="Student">
<selectKey keyColumn="id" resultType="int" keyProperty="id" order="BEFORE">
select STUDENT_SEQ.nextval id from dual
</selectKey>
INSERT INTO STUDENT_TAB(NAME,AGE,SCORE)VALUES(#{name},#{age},#{score})
</insert>
</mapper>
这是我的测试代码
@Testpublic void test02() {
Student student = new Student("zhouqi2",30,98);
System.out.println("添加前:"+student);
dao.insertStudentCache(student);
System.out.println("添加后:"+student);
}
希望大佬告知此问题要怎么解决以及出现的原因
以上是 为什么mybatis获取的序列值和Oracle数据库中的不一致? 的全部内容, 来源链接: utcz.com/a/167212.html