MyBatis Oracle 自增序列的實(shí)現(xiàn)方法
mybatis oracle 自增序列的代碼如下所示:
<insert id=" insert " useGeneratedKeys="true" keyProperty="s_id" parameterType="xxxx" >
<selectKey resultType="int" order="BEFORE" keyProperty="s_id">
SELECT SEQ_TABLE.NEXTVAL FROM dual
</selectKey>
INSERT INTO <span style="font-family: Arial, Helvetica, sans-serif;">s_id</span><span style="font-family: Arial, Helvetica, sans-serif;">,name,age</span>
VALUES
(#{s_id} #{name}, #{age} )
</insert>
resultType="int" 返回的是一個(gè)int類(lèi)型
keyProperty 把返回值,賦值給:parameterType中對(duì)象的對(duì)象的屬性,也就是xxxxx類(lèi)中的s_id屬性
useGeneratedKeys="true" keyProperty="s_id"
返回序列id,如果不需要,可以不填
下面看下mybatis配置oracle的主鍵自增長(zhǎng)
mysql、sqlserver等數(shù)據(jù)庫(kù)本身帶有主鍵自增長(zhǎng)像auto_increment的功能可以直接使用
useGeneratedKeys=”true”來(lái)實(shí)現(xiàn),比如下面的配置
insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
而oracle則不行,oracle主鍵自增長(zhǎng)是通過(guò)sequence實(shí)現(xiàn)的,所以這種方式就不可以了,需要使用:
1.先通過(guò)sequence查出來(lái)id,再insert
select yoursequence.nextval as id from dual
insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
2.直接insertsequence.nextval,如下
insert into s_user_auth (id,user_id, user_name) values(yoursequence.nextval,#{userid},#{username})
相關(guān)文章
華為技術(shù)專(zhuān)家講解JVM內(nèi)存模型(收藏)
這篇文章主要介紹了華為技術(shù)專(zhuān)家講解JVM內(nèi)存模型(收藏)的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),具有一定的收藏借鑒價(jià)值,需要的朋友可以參考下2021-05-05
java組裝樹(shù)形結(jié)構(gòu)List問(wèn)題
這篇文章主要介紹了java組裝樹(shù)形結(jié)構(gòu)List問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
Spring中ApplicationEvent事件機(jī)制源碼詳解
這篇文章主要介紹了Spring中ApplicationEvent事件機(jī)制源碼詳解,Spring中與事件有關(guān)的接口和類(lèi)主要包括ApplicationEvent、ApplicationListener,下面來(lái)看一下Spring中事件的具體應(yīng)用,需要的朋友可以參考下2023-09-09
仿京東平臺(tái)框架開(kāi)發(fā)開(kāi)放平臺(tái)(包含需求,服務(wù)端代碼,SDK代碼)
現(xiàn)在開(kāi)放平臺(tái)越來(lái)越多了,下面針對(duì)仿京東開(kāi)放平臺(tái)框架,封裝自己的開(kāi)放平臺(tái),分享給大家。先感謝一下京東開(kāi)放平臺(tái)的技術(shù)大佬們,下面從開(kāi)放平臺(tái)需求,服務(wù)端代碼,SDK代碼三大塊進(jìn)行分享2021-06-06
Java實(shí)現(xiàn)輸出數(shù)字三角形實(shí)例代碼
大家好,本篇文章主要講的是Java實(shí)現(xiàn)輸出三角形實(shí)例代碼,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽2022-01-01
Spring事務(wù)失效場(chǎng)景的詳細(xì)整理
Spring 事務(wù)的傳播特性說(shuō)的是,當(dāng)多個(gè)事務(wù)同時(shí)存在的時(shí)候,Spring 如何處理這些事務(wù)的特性,下面這篇文章主要給大家介紹了關(guān)于Spring事務(wù)失效場(chǎng)景的相關(guān)資料,需要的朋友可以參考下2022-02-02

