閱讀554 返回首頁    go 阿裏雲 go 技術社區[雲棲]


ibatis的insert中使用序列

 

Oracle中創建序列

create sequence MYDB_SEQUENCE
increment by 1
start with 1
nomaxvalue
minvalue 1;

 

xml寫法

<insert parameterClass="Student">
 <selectKey resultClass="String" keyProperty="mid">
  SELECT  MYDB_SEQUENCE.NEXTVAL FROM DUAL
 </selectKey>
 <![CDATA[
  insert into Student(id,name,age)
  values(#mid#,#mname#,#mage#)
 ]]>
</insert>

 

我們為什麼說使用序列會出現跳號的情況呢?

有兩個人A和B,A先使用序列,插入了一條數據,這時候序列為1。

B又使用同一個序列,這時候序列為2。

這個時候A後使用該序列了,為3。那麼A的表中從1直接到3了,這就跳號了。為了避免這種情況,不同的表可以使用不同的序列。

 

 

 

最後更新:2017-04-03 05:40:22

  上一篇:go tomcat下的work目錄
  下一篇:go SVN提示文件被鎖住以及Unlocker軟件的使用