Oracle設置主鍵自增


oracle沒有mysql那樣可以有自增主鍵,需要自己通過創建序列才能實現自增

/*創建自增序列*/
CREATE SEQUENCE CMB_CHINA_CITYS_ID
MINVALUE 1       --最小值
NOMAXVALUE       --不設置最大值
START WITH 1     --從1開始計數
INCREMENT BY 1   --每次加1
NOCYCLE          --一直累加,不循環
NOCACHE;         --不建緩沖區

說明:

CMB_CHINA_CITYS_ID:序列名稱

插入語句的時候就可以使用CMB_CHINA_CITYS_ID.nextval,方式來獲取序列

 上面的只是自動創建ID,插入數據的時候得手動調用,如果想方便一點,我們還可以加入一個觸發器,當程序插入數據之前觸發

CREATE OR REPLACE TRIGGER TRIGGER_TABLE_AUTO_INCREA_ID
BEFORE INSERT ON TABLE_NAME  
FOR EACH ROW    
DECLARE  
BEGIN    
SELECT TABLE_NAME.NEXTVAL INTO :NEW.ID FROM DUAL;  
END TRIGGER_TABLE_AUTO_INCREA_ID;

說明:

TRIGGER_TABLE_AUTO_INCREA_ID:觸發器名稱

TABLE_NAME:表名


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM