Oracle中序列的操作以及使用前对序列的初始化 以ibatis为例

一 创建序列
create sequence myseq
start with 1
increment by 1
nomaxvalue
minvalue 1

二 初始化序列
select myseq.nextval from dual;
这里值得注意的是,如果先直接写select myseq.currval from dual,会提示会提示myseq.currtval尚未在此会话中定义。
-


三 使用序列
初始化序列之后才可以使用该序列,我们以ibatis为例。
<insert id="insert" parameterClass="Student">
           <selectKey resultClass="String" keyProperty="mid">
                select myseq.nextval from dual
          </selectKey>
          <![CDATA[
              insert into Student(id,name,age)
                values(#mid#,#mname#,#mage#)
           ]]>
</insert>

四 修改序列
在修改序列的时,有以下值不能修改
1 不能修改序列的初始值
2 序列的最小值不能大于当前值(currval)
3 序列的最大值不能小于当前值(currval)
alter sequence myseq
increment by 2

五 删除序列
drop sequence myseq


 

你可能感兴趣的:(oracle,ibatis,String,insert)