oracle create auto-increment field method

1. Create a table

create table test
(
  id          NUMBER,
  messageid   VARCHAR2(32)
);

2. Create a sequence

create sequence test_id
minvalue 1
maxvalue 9999999
start with 1
increment by 1
cache 50;

3. Create a trigger

CREATE OR REPLACE TRIGGER "test_auto_id"
  BEFORE INSERT ON recv_msg
  REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW
DECLARE
BEGIN
  SELECT test_id.NEXTVAL INTO :NEW.ID FROM DUAL;
END recv_trig;

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324832872&siteId=291194637