mybatis 在oracle數據庫中插入數據時獲取自增 sequence序列


在表中部分ID會使用創建Oracle的序列來賦值,使用mybatis 插入時需要把ID賦值為遞增序列的當前

1.創建序列

--創建序列的語法  序列就是序號,每次獲取的時候就會自動增加
CREATE SEQUENCE 表名.序列名
    INCREMENT BY 1 
  START WITH 1 -- 從1開始計數
  NOMAXvalue -- 不設置最大值
  NOCYCLE -- 一直累加,不循環
  CACHE 10; --設置緩存cache個序列,如果系統down掉了或者其它情況將會導致序列不連續,也可以設置為---------NOCACHE

2.在mybatis 配置文件中增加對序列的取值賦值到ID上 (resultType="java.lang.Integer" 是id的類型 在插入時實現遞增)

<insert id="insert" parameterType="com.zpark.entity.UserEntity">
       <selectKey resultType="java.lang.Integer" order="BEFORE" keyProperty="id">
           SELECT 序列名 FROM DUAL
       </selectKey>
   INSERT INTO User(
   id,userName,password)
   VALUES
   ( #{id,jdbcType=DECIMAL},#{userName,jdbcType=VARCHAR},#{password,jdbcType=VARCHAR})
</insert>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM