oracle建立SEQUENCE序列

2021-10-08 11:57:06 字數 937 閱讀 7725

create sequence seq_user_info_id//你建立的序列的名稱

increment by 1

//每次自增長1

start with 1

//預設id從1開始

maxvalue 99999999

//設定序列最大值為8位9 , nomaxvalue代表不設定最大值

minvalue 1

//設定最小值

cache 20

;//設定快取的個數,因為是快取在記憶體中,當系統宕機後,將會跳過20個序列導致序列不連續 ; 這裡可以寫nocache不快取序列

create table user_info

( id number(10

) primary key not null ,

name varchar2(50

))

簡單的做法就是往表裡面插入一條資料,其中seq_user_info_id.nextval表示了序列的下乙個數值

insert into user_info

(id , name )

values

(seq_user_info_id.nextval ,

'vergil'

)

當然這樣插入後id其實是2,因為設定的序列是從1開始,而序列的自增長又是1,所以下乙個序列就是2,這樣序列就和表聯絡了,至於能不能乙個序列被多個表使用,還是不要這樣,乙個表對應乙個序列。

可以使用seq_user_info_id.currval得到序列當前值,或者你從0開始自增長。

select seq_user_id.currval from dual //操作不影響序列值

select seq_user_id.nextval from dual //每操作一次序列增長1

Oracle中如何建立使用SEQUENCES

oracle中sequences的使用 oracle提供了sequence物件,由系統提供自增長的序列號,通常用於生成資料庫資料記錄的自增長主鍵或序號的地方.下面介紹一下關於sequence 的生成,修改,刪除等常用的操作 1.建立 sequence 使用如下命令新建sequence 使用者需要有c...

Oracle建立自增長序列 SEQUENCE

oracle通過建立序列來實現自增張欄位。建立序列的語法 建立序列的語法 create sequence user sequence name increment by n start with n maxvalue n nomaxvalue minvalue n nominvalue 修改序列的語...

sql server建立序列sequence

1 建立乙個序列物件 1 create sequence schema name sequence name 2as built in integer type user defined integer type 3 start with 4increment by 5 6 7cycle 8 seq...