原創 oracle sequence簡介

2021-06-20 21:22:21 字數 2146 閱讀 7047

sequence簡介

2013-12-26

一、概述

sequence是序列號的意思,每次取的時候它會自動增加。sequence與表沒有從屬關係,與表一樣屬於使用者。

二、主要內容

1、create sequence語法

--首先使用者要有create sequence或者create any sequence的許可權。

create sequence seqname [ increment increment ]

[ minvalue minvalue ] [ maxvalue maxvalue ]

[ start start ] [ cache cache ] [ cycle ][order]

seqname: 

序列名increment: 

遞增數,例如increment by 1就是遞增1;increment by -1就是遞減1。

minvalue: 

序列最小值

maxvalue: 

序列最大值,最大為27個9.

start: 

序列從哪個值開始,例如start with 200就是從200開始。

cache: 

快取序列個數,先取一部分序列值存入快取,可以提高效能。缺點是發生系統故障後可能導致

序列號不連續。可以設定為nocache保證不會發生序列跳動。預設值是20。

cycle: 

迴圈,到達最大值後,從最小值重新開始生成序列號。可以設定為nocycle表示累加不迴圈。

order: 

保證按順序申請。預設是noorder。order 和 noorder 的區別表現在 並行服務 和獨佔服務之間 打個比方:雙cpu對同乙個oracle db 中的 abc sequence申請序號時, 這時就有兩個請求a和b,假設a請求在前b在後, 現在abc序列中的值為9. 如果新增了order選項,那麼一定是a請求到9, b請求到10.但如果沒有新增此選項,則有可能b請求到9, a請求到10.order一般用於時間戳型別,對於主鍵則用處不大。

例子: create sequence seq

minvalue 1 

--最小值

increment by 1 

--遞增1

start with 1 

--從1開始

nomaxvalue 

--無最大值

nocycle 

--不迴圈

cache 100; 

--快取100個序列號

2、使用sequence

定義好sequence後,你就可以用currval,nextval取得值。

currval:返回 sequence的當前值

nextval:返回sequence的下乙個值

select seq.currval from dual

select seq.nextval from dual

3.在sql語句中可以使用sequence的地方:

(1)不包含子查詢、snapshot、view的 select 語句

(2)insert語句的子查詢中

(3)insert語句的values中

(4)update 的 set中

例如:insert into student(id,name) values(seq.nextval,'jack');

注意: 第一次nextval返回的是初始值,隨後的nextval會返回增加後的值。currval 總是返回當前sequence的值,但是在第一次nextval初始化之後才能使用currval,否則報如下錯誤:

ora-08002 序列currval尚未在會話中定義。

使用一次nextval會增加一次 sequence的值,所以如果你多次執行包含nextval的一條語句,其值就是不一樣的。

3、修改sequence引數

擁有alter any sequence 許可權才能改動sequence. 可以alter除start至以外的所有sequence引數.如果想要改變start值,必須 drop sequence再create。

例:alter sequence seq maxvalue 9999999;

alter sequence seq cache 10;

4、drop sequence

drop sequence seq;

談談那些偽原創的事 崇尚原創拒絕偽原創

內容為王,這句話相比每乙個站長都知道,但是很多人知道,卻做不到,我看到最多 的是偽原創,有的站長甚至直接用軟體採集,這就是典型的明知山有虎偏向虎山行,最終給你乙個重重的懲罰,才會長記性。第一種就是僥倖心理,在他們心理,想著不會那麼巧,抓住自己,然而事實上,蜘蛛幾乎每一秒都在監視著你的 很多時候,我們...

偽原創工具?什麼是偽原創工具!

小發貓ai寫作官網 聯絡qq3408641新增理由 偽原創工具。昨天下午三點鐘左右,一樓售後來 說,usb評價器不能使用了 我趕緊去售後檢視 出現問題。我問售後展廳經理,正常使用前,你做過什麼操作 展廳經理一臉茫然的說,我就做 檢,好長時間沒有體檢了 我檢視下這台伺服器的資料庫設定,發現展廳經理使用...

Web列印(原創)

我檢視了一下,每種應用程式的頁面設定可能不一樣的。記事本的和ie的頁面設定介面風格都不一樣。看起來ie頁面設定可以由以下內容組成 1,紙張規格 2,紙張 3,頁首,頁尾 4,布局方式 橫向 縱向 5,頁邊距 左,右,上,下 6,印表機 其餘的就沒有了吧 以上內容有ie的設定,也有印表機的設定。1,2...