Oracle 设置自增长

-- 创建表
CREATE TABLE Log (
ID NUMBER PRIMARY KEY,
Message VARCHAR2(100),
state VARCHAR2(100)
);

-- 创建序列
CREATE SEQUENCE "Log_seq"
START WITH 1
INCREMENT BY 1
NOCACHE
NOCYCLE;

-- 创建触发器
CREATE OR REPLACE TRIGGER Log_seq_trigger
BEFORE INSERT ON Log
FOR EACH ROW
BEGIN
IF :NEW.ID IS NULL THEN
SELECT Log_seq.NEXTVAL INTO :NEW.ID FROM DUAL;
END IF;
END;

-- 插入数据
INSERT INTO Log (Message) VALUES (1);
INSERT INTO Log (NAME) VALUES ('Bob');

posted @ 2025-03-12 13:00  林新i  阅读(35)  评论(0)    收藏  举报