oracle 设置自增序列
新建序列新建序列的语句例:表warn_person加自增序列--warn_person 表名CREATE sequence seq_warn_person minvalue 1 --最小值nomaxvalue --不设置最大值START WITH 1 --从1开始计数INCREMENT BY 1 --每次加1个nocycle --一直累加,不循环nocache;--不建缓冲区创建触发器 warn_
·
新建序列
新建序列的语句
例:表warn_person加自增序列
--warn_person 表名
CREATE sequence seq_warn_person minvalue 1 --最小值
nomaxvalue --不设置最大值
START WITH 1 --从1开始计数
INCREMENT BY 1 --每次加1个
nocycle --一直累加,不循环
nocache;--不建缓冲区
创建触发器 warn_person_sid_trigger
CREATE
OR REPLACE TRIGGER warn_person_sid_trigger before INSERT ON warn_person referencing old AS old new AS new FOR each ROW
BEGIN
SELECT
seq_warn_person.nextval INTO : new.PERSON_ID
FROM
dual;
END warn_person_sid_trigger;
删除触发器 warn_person_sid_trigger
drop trigger tib_operationondata(warn_person_sid_trigger);
那么mabatis中怎么用呢?
如下,这样就能实现oracle自增了
<!--新增所有列-->
<insert id="insert" keyProperty="projectPersonId" useGeneratedKeys="true">
<selectKey resultType="java.lang.Long" order="BEFORE" keyProperty="projectPersonId">
SELECT SEQ_WARN_PROJECT_PERSON.nextval AS projectPersonId FROM DUAL
</selectKey>
INSERT INTO WARN_PROJECT_PERSON
<trim prefix="(" suffix=")" suffixOverrides=",">
PROJECT_PERSON_ID,
<if test="personId != null">PERSON_ID,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
#{projectPersonId},
<if test="personId != null">#{personId},</if>
</trim>
</insert>```
更多推荐
已为社区贡献1条内容
所有评论(0)