2015年8月19日 星期三

[Oracle] 自動滾流水號

1. create一個流水號sequence(USERS_KEY)
DROP SEQUENCE SCHEMA_NAME.USERS_KEY;

CREATE SEQUENCE SCHEMA_NAME.USERS_KEY START WITH 100 MAXVALUE 999999999999999999999999999 MINVALUE 0 NOCYCLE NOCACHE NOORDER;

2. 上述case代表, 此sequence已經用了0~99, 下次取流水號就會是100
SELECT KPI_USERS_KEY.NEXTVAL FROM DUAL

應用:
假設有一個USERS的table, 有個key的欄位, key欄位的值就可以用此方式產生
每insert一筆資料都去取下一個流水號, 可以避免產生重複的key

沒有留言:

張貼留言