Oracle主键自增

Oracle主键自增

1、建表

CREATE TABLE TEST_TABLE
(
	ID INT NOT NULL,
	NAME VARCHAR2(40) NULL,
	AGE VARCHAR2(40) NULL
);

在这里插入图片描述

2、设置主键

ALTER TABLE TEST_TABLE ADD CONSTRAINT TEST_TABLE_PK PRIMARY KEY (ID);

在这里插入图片描述

3、新建序列

CREATE SEQUENCE TEST_TABLE_AUTOINC_SEQ
MINVALUE 1
NOMAXVALUE
INCREMENT BY 1
START WITH 1
NOCACHE;

在这里插入图片描述

4、新建触发器

CREATE OR REPLACE TRIGGER  TEST_TABLE_AUTOINC_TG
BEFORE INSERT ON TEST_TABLE FOR EACH ROW 
BEGIN
	SELECT TEST_TABLE_AUTOINC_SEQ.NEXTVAL INTO:NEW.ID FROM DUAL;
END;

在这里插入图片描述

5、测试

INSERT INTO TEST_TABLE (NAME,AGE)VALUES('测试1','18');
INSERT INTO TEST_TABLE (NAME,AGE)VALUES('测试2','19');
INSERT INTO TEST_TABLE (NAME,AGE)VALUES('测试3','20');

![在这里插入图片描述]( https://img-blog.csdnimg.cn/0ba5611a1de24334aeb0a89d3de6a6ae.png?x-oss-process=image/watermark ,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAU2hlcmxvY2tlclN1bg==,size_11,color_FFFFFF,t_70,g_se,x_16#pic_left)

6、结果

SELECT * FROM TEST_TABLE;

在这里插入图片描述

posted @ 2022-01-18 11:16  SherlockerSun  阅读(19)  评论(0)    收藏  举报