mybatis + oracle 自增 结合navicate

1、navicate建表

//T_USER表建立序列T_USER_SQ
CREATE SEQUENCE T_USER_SQ INCREMENT BY
1 NOMAXVALUE NOCYCLE CACHE 10;
//语句
select T_USER_SQ.nextval from dual insert into T_USER(USER_ID,USER_NAME,USER_AGE) values(T_USER_SQ.nextval,'zhangjinjie','20');

 

//oracle自增序列
CREATE SEQUENCE SC_STATISTICS_SQ
// 每次加几个
INCREMENT BY 1   
//不设置最大值
NOMAXVALUE
//不循环
NOCYCLE
CACHE 10;
DROP SEQUENCE SC_STATISTICS_SQ;//删除序列

 

2、mybatis写法

    <insert id="addNote" parameterType="com.sunyard.bigdata.pojo.Note">
            <selectKey keyProperty="userId" resultType="int" order="BEFORE">
                select T_USER_SQ.nextval from dual
            </selectKey>
            insert into T_USER(USER_ID,USER_NAME,USER_AGE) values(#{userId},#{userName},#{userAge})
        </insert>
    <insert id="addNote1" parameterType="com.sunyard.bigdata.pojo.Note">
        <selectKey keyProperty="userId" resultType="int" order="AFTER">
            select T_USER_SQ.CURRVAL AS USER_ID from dual
        </selectKey>
        insert into T_USER(USER_ID,USER_NAME,USER_AGE) values(T_USER_SQ.NEXTVAL,#{userName},#{userAge})
    </insert>

 

posted @ 2020-02-27 09:28  半城狂客  阅读(261)  评论(0编辑  收藏  举报