oracle沒有mysql那樣能夠有自增主鍵,須要本身經過建立序列才能實現自增mysql
/*建立自增序列*/ CREATE SEQUENCE CMB_CHINA_CITYS_ID MINVALUE 1 --最小值 NOMAXVALUE --不設置最大值 START WITH 1 --從1開始計數 INCREMENT BY 1 --每次加1 NOCYCLE --一直累加,不循環 NOCACHE; --不建緩衝區
說明:sql
CMB_CHINA_CITYS_ID:序列名稱oracle
插入語句的時候就能夠使用CMB_CHINA_CITYS_ID.nextval,方式來獲取序列spa
上面的只是自動建立ID,插入數據的時候得手動調用,若是想方便一點,咱們還能夠加入一個觸發器,當程序插入數據以前觸發code
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;
說明:blog
TRIGGER_TABLE_AUTO_INCREA_ID:觸發器名稱class
TABLE_NAME:表名循環