oracle對序列的操作

2022-02-07 05:04:22 字數 1329 閱讀 1302

select t.*, t.rowid from tbl_type t order

by t.id desc

select seq_tbl_type_id.nextval from

dual;

alter sequence seq_tbl_type_id increment by

200;

alter sequence seq_tbl_type_id increment by1;

select seq_tbl_type_id.currval from

dual;

drop

sequence seq_tbl_type_id;

create

sequence seq_tbl_type_id;

oracle中建立、修改、刪除序列

oracle沒有象sql server中一樣的自增加字段,要實現只能通過sequence來實現。

1、建立序列語法:(需要create sequence系統許可權)

create

sequence 序列名

[increment by n]--

-用於定義序列的步長。

如果省略,則預設為1,如果出現負值,則代表序列的值是按照此步長遞減的。

[start with n]--

-定義序列的初始值(即產生的第乙個值),預設為1。

---定義序列生成器能產生的最大值。

選項nomaxvalue是預設選項,代表沒有最大值定義,這時對於遞增

序列,系統能夠產生的最大值是10的27次方;對於遞減序列,最大值是 -

1。minvalue定義序列生成器能產生的最小值。選項nomaxvalue是

預設選項,代表沒有最小值定義,這時對於遞減序列,系統能夠產生

的最小值是?10的26次方;對於遞增序列,最小值是1。

---表示當序列生成器的值達到限制值後是否迴圈。

cycle代表迴圈,nocycle代表不迴圈。如果迴圈,則當遞增序列達到最大值時,迴圈到最

小值;對於遞減序列達到最小值時,迴圈到最大值。如果不迴圈,達到限制值後,繼續產生新值

就會發生錯誤。

; --

-cache(緩衝)定義存放序列的記憶體塊的大小,預設為20。

nocache表示不對序列進行記憶體緩衝。對序列進行記憶體緩衝,可以改善序列的效能。

2、修改序列語法:

alter

sequence 序列名   [

increment by n][

][];

*不能修改序列的初始值

3、刪除序列語法:

drop sequence 序列名;

Oracle中序列的操作以及使用前對序列的初始化

一 建立序列 create sequence myseq start with 1 increment by 1 nomaxvalue minvalue 1 二 初始化序列 select myseq.nextval from dual 這裡值得注意的是,如果先直接寫select myseq.curr...

oracle序列操作

序列的主要作用 在很多資料庫裡都存在自動增長列的資料型別,幾乎所有的關係型資料庫都支援自動增長列的操作,但是只有oracle特殊,只有oracle 12c版本之後才提供自動增長列,在此之前都是用序列的方式來處理。序列的建立語法 create sequence 序列名 increment by 步長 ...

ORACLE序列操作

建立序列 create sequence tempinfo seq increment by 1 每次加幾個 start with 1 從1開始計數 nomaxvalue 不設定最大值 nocycle 一直累加,不迴圈 cache 10 設定快取cache個序列,如果系統down掉了或者其它情況將會...