Fork me on GitHub

Oracle数值类型主键自增长

创建表
1
2
3
4
5
6
 CREATE TABLE K_USER (
ID NUMBER PRIMARY KEY,
USER_NAME VARCHAR(45) NOT NULL,
pd VARCHAR(45) NOT NULL,
ENABLED NUMBER DEFAULT 1 NOT NULL
);
创建自增序列
1
2
3
4
5
6
CREATE SEQUENCE K_USER_ID_AUTOINC -- 序列的名称
 MINVALUE 1 -- 最小值
 MAXVALUE 99999999 -- 最大值
 START WITH 1 -- 从多少开始
 INCREMENT BY 1 -- 每次序列加多少
 NOCACHE;
创建序列
1
2
3
4
5
6
CREATE OR REPLACE TRIGGER K_USER_ID_TRIGGER -- 监听的名称
 BEFORE INSERT ON K_USER FOR EACH ROW WHEN (new.ID IS NULL)
 -- 在插入循环ID为空的列
   BEGIN
SELECT K_USER_ID_AUTOINC.nextval INTO :new.id FROM dual;
END;
I'm not rich, but still hold the dream.
显示 Gitment 评论