日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

oracle 序列/自增ID

作者:郭俊強 更新時間: 2023-07-15 編程語言

個人理解:序列其實就是有一個內存空間存放著一個值,這個值一直在根據設置進行增減,根據名字去取序列對應的值,然后就可以用來做自增id

查看所有序列

select * from user_sequences

新建序列?(創建序列名稱叫TEST_FUNCTION_SEQ的序列,從1開始,每次增加1,沒有最小值;最大值為:99999999999999,不循環)

CREATE SEQUENCE TEST_FUNCTION_SEQ
 START WITH 1	 
 INCREMENT BY 1	
 NOMINVALUE
 MAXVALUE 99999999999999
 NOCYCLE
 NOORDER
 NOCACHE;

序列字段解釋:

CREATE SEQUENCE sequenceName ?//創建的序列名稱
?
? ? ? ?[START WITH n] ? ?//開始的值,遞增默認是minvalue 遞減是maxvalue
?
? ? ? ?[INCREMENT BY n] ?//遞增的序列值是n 如果n是正數就遞增,如果是負數就遞減 默認是1
?
? ? ? ?[{MAXVALUE n | NOMAXVALUE}] //最大值
?
? ? ? ?[{MINVALUE n | NOMINVALUE}] //最小值
?
? ? ? ?[{CYCLE | NOCYCLE}] //循環/不循環一直累加到最大值
?
? ? ? ?[{CACHE n | NOCACHE}];//分配并存入到內存中
?
?
Cycle 循環 nocycle 不循環
?
Cache 緩存 ? //一般不采用緩存
?
Nextvalue 下一個
?
Currval 當前值

刪除序列:

 DROP SEQUENCE 序列名稱

使用序列來寫一個自增id


CREATE OR REPLACE TRIGGER 觸發器名稱
  BEFORE INSERT ON 表名
  FOR EACH ROW
BEGIN
	 SELECT 序列名稱.nextval INTO :new.表字段 FROM dual;
END TRIGGERFUNCTION;

原文鏈接:https://blog.csdn.net/qq_37061571/article/details/127324207

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新