oracle怎么查詢下一個(gè)序列

oracle中,可利用select語(yǔ)句配合Nextval查詢下一個(gè)序列,Nextval第一次返回的是初始值,之后每次都會(huì)增加一次sequence值,因此可查詢下一個(gè)序列,語(yǔ)法為“select 序列名.Nextval from dual”。

oracle怎么查詢下一個(gè)序列

本教程操作環(huán)境:Windows10系統(tǒng)、Oracle 11g版、Dell G3電腦。

oracle怎么查詢下一個(gè)序列

select?序列名.Nextval?from?dual;--生成并獲得下一個(gè)序列 select?序列名.CURRVAL?from?dual;--如果與上述語(yǔ)句為同一會(huì)話,可以通過(guò)此句獲得上面生成的序列。

示例如下:

oracle怎么查詢下一個(gè)序列

擴(kuò)展知識(shí):

SELECT?INR_REQUIRMENT_SQUENCE.CURRVAL?FROM?dual

–獲取當(dāng)前的sequence的值,第一次NEXTVAL返回的是初始值;

隨后的NEXTVAL會(huì)自動(dòng)增加你定義的INCREMENT BY值, 然后返回增加后的值。CURRVAL 總是返回當(dāng)前sequence的值,但是在第一次NEXTVAL 初始化之后才能使用CURRVAL,否則會(huì)出錯(cuò)。

一次NEXTVAL會(huì)增加一次sequence的值, 所以如果你在同一個(gè)語(yǔ)句里面使用多個(gè)NEXTVAL。

其實(shí)sequence是序列號(hào)生成器,可以為表中的行自動(dòng)生成序列號(hào),產(chǎn)生一組等間隔的數(shù)值(類型為數(shù)字)。其主要的用途是生成表的主鍵值,可以在插入語(yǔ)句中引用,在插入之前,獲取序列號(hào)nextval值,然后進(jìn)行插入。也可以通過(guò)查詢檢查當(dāng)前值,或使序列增至下一個(gè)值。

如何定義一個(gè)sequence?

create?sequence?INR_REQUIRMENT_SQUENCE?? INCREMENT?BY?1?--?每次加幾個(gè) START?WITH?1?--?從1開(kāi)始計(jì)數(shù) NOMAXVALUE?--?不設(shè)置最大值 NOCYCLE?--?一直累加,不循環(huán) CACHE?10;

推薦教程:《Oracle視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊15 分享