亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Oracle中NEXTVAL案例詳解

 更新時(shí)間:2021年08月18日 14:25:24   作者:qianyi168  
這篇文章主要介紹了Oracle中NEXTVAL案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

1.什么是sequence?其作用是什么?

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

2.如何定義一個(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;

    上面語(yǔ)句則創(chuàng)建了一個(gè)sequence?

 3.如何獲取一個(gè)sequence的值?

       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。

4.可以在哪些地方使用Sequence?

- 不包含子查詢(xún)、snapshot、VIEW的 SELECT 語(yǔ)句

- INSERT語(yǔ)句的子查詢(xún)中

- NSERT語(yǔ)句的VALUES中

- UPDATE 的 SET中

在實(shí)際開(kāi)發(fā)中,比如一個(gè)表中的主鍵需要先得到主鍵ID,可以用NEXTVAL來(lái)獲下一個(gè)取序列值,然后再進(jìn)行其他操作。

5.如何刪除Sequence?

         DROP sequence policy_id_seq; --policy_id_seq為sequence的名字,如果要改變sequence中的初始值,必須先刪除序列號(hào)然后再進(jìn)行創(chuàng)建。你或者是該sequence的owner,或者有ALTER ANY sequence權(quán)限才能改動(dòng)sequence,直接用Alter語(yǔ)句進(jìn)行sequence的更新。   

到此這篇關(guān)于Oracle中NEXTVAL案例詳解的文章就介紹到這了,更多相關(guān)Oracle中NEXTVAL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論