mybatis oracleデータベースにデータを挿入するときの自己増分sequenceシーケンスの取得

2480 ワード

表の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>