步驟:1.建立序列
2.建立觸發器。
語法解析:
create sequence tb_code_sequence
minvalue 1
maxvalue 999999999999999999999999999
start with 11
increment by 1
cache 10;
create or replace trigger tb_code_increase before insert on tb_code
for each row
begin
select tb_code_sequence.nextval into:new.id from dual;
end;
create sequence tb_code_sequence ---建立乙個名為tb_code_sequence的序列。
minvalue 1 ---最小值為1
maxvalue ---最大值,可對maxvalue設定任意正整數值。當不設任何值時,預設為999999999999999999999999999
start with 11---從第11條記錄開始,當表中沒有記錄,則從1開始
increment by 1---增量值為1,每次自增1
cache 10 ---cache(緩衝)定義存放序列的記憶體塊的大小,預設為20。
create or replace trigger tb_code_increase ---建立乙個名為tb_code_increase的觸發器
before insert on tb_code ---定義發生什麼時間時激發觸發器,這裡定義為在對tb_code表進行插入之前激發觸發器
for each row ---迴圈每一行
begin
select tb_code_sequence.nextval into:new.id from dual; ---查詢序列當中nextval返回的值並返回給序列。
end;
修改:
序列的某些部分也可以在使用中進行修改,但不能修改satrt with選項。
對序列的修改只影響隨後產生的序號,已經產生的序號不變。
Oracle 建立序列自增
oracle不像sql server 有關鍵字identity直接可插入資料時自增 實現oracle 自增列第一步,建立乙個sequence。create sequence tempinfo seq increment by 1 start with 1 minvalue 1 maxvalue 99...
oracle建立自增序列
create sequence user sequence increment by 1 自增1 start with 2 從2開始 nomaxvalue 沒有最大值 nocycle 不迴圈 cache 10 快取10個 select user sequence.currval from dual ...
ORACLE建立自增序列
步驟 1.建立序列 2.建立觸發器。語法解析 create sequence tb code sequence minvalue 1 maxvalue 999999999999999999999999999 start with 11 increment by 1 cache 10 create o...