mybatis 在oracle資料庫中插入資料時獲取自增ID sequence序列
阿新 • • 發佈:2018-11-05
-
在oracle中sequence就是序號,每次取的時候它會自動增加。sequence與表沒有關係。 Create Sequence 首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE許可權。 建立語句如下: CREATE SEQUENCE seqTest INCREMENT BY 1 -- 每次加幾個 START WITH 1 -- 從1開始計數 NOMAXvalue -- 不設定最大值 NOCYCLE -- 一直累加,不迴圈 CACHE 10; --設定快取cache個序列,如果系統down掉了或者其它情況將會導致序列不連續,也可以設定為---------NOCACHE
-
<insert id="insert" parameterType="com.huarui.mapping.entity.PmpersoninputEntity" flushCache="true"> <selectKey resultType="java.lang.String" order="BEFORE" keyProperty="input_id"> SELECT SEQTEST.NEXTVAL FROM DUAL </selectKey> INSERT INTO OA_PM_PERSON_INPUT ( input_id,project_id ,user_id,input_ym,LAST_MODIFY,CREATE_TIME ) VALUES ( #{input_id,jdbcType=VARCHAR}, #{project_name,jdbcType=VARCHAR}, #{user_name,jdbcType=VARCHAR}, SYSDATE, SYSDATE, SYSDATE ) </insert> resultType="java.lang.String"是id的型別,主鍵是input_id,input_id在插入時實現自增