Sequence在Oracle中的使用

來源:互聯網
上載者:User

標籤:https   copyto   data   span   開啟   plain   basename   title   使用   

  Oracle中,當需要建立一個自增欄位時,需要用到sequence。sequence也可以在mysql中使用,但是有些差別,日後再補充,先把oracle中sequence的基本使用總結一下,方便日後查閱。

 

1、建立sequence:

 

[sql] view plain copy 
  1. create sequence SEQ_ON_USER  
  2. minvalue 1  
  3. maxvalue 999999999999999999999999999  
  4. start with 1  
  5. increment by 1  
  6. nocache;    

 

說明:

 minvalue:序列最小值

 maxvalue/nomaxvalue:序列最大值/沒有最大值

 start with 1:序列從1開始

 increment by 1:每次增加1

 cache/nocache:nocache不緩衝。cache緩衝。開啟緩衝,效率高,只是如果資料庫宕機了,緩衝丟失,會出現序列跳號情況。

 

2、查看已有sequence:

 

[sql] view plain copy 
  1. select * from user_sequences;  

3、刪除指定sequence:

 

[sql] view plain copy 
  1. DROP SEQUENCE SEQ_ON_USER;  

4、查看指定sequence的當前值:

兩種方式:

 

[sql] view plain copy 
  1. select last_number from user_sequences wheresequence_name=‘SEQ_ON_USER‘;  

 

 

[sql] view plain copy 
  1. select SEQ_ON_USER.nextval from sys.dual;  

        5、建立觸發器使用sequence設定主鍵自動插入。

 

[sql] view plain copy 
  1. create or replace trigger "SEQ_ON_USER_GENERATOR" before  
  2.   insert on databasename1.T_USER for each row  
  3.   declare  
  4.          mid number,  
  5.   begin  
  6.     select SEQ_ON_USER.nextval into mid from dual;  
  7.     :new.id:=mid;  
  8.    end  
  9.   
  10. create trigger SEQ_ON_USER_Trigger   
  11.   
  12. before insert on T_USER for each row   
  13. begin   
  14. select SEQ_ON_USER.nextval into :new.id from dual;   
  15. end SEQ_ON_USER_Trigger;   

 

        6、代碼中使用sequence.nextval插入主索引值。

 

Sequence在Oracle中的使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.