oracle建表实现主键自增
时间: 2023-06-17 20:04:03 浏览: 172
Oracle创建主键自增表(sql语句实现)及触发器应用
5星 · 资源好评率100%
可以通过使用序列和触发器来实现 Oracle 数据库的主键自增功能。
步骤如下:
1. 创建一个序列
```
CREATE SEQUENCE seq_name
INCREMENT BY 1
START WITH 1
MAXVALUE 999999999
MINVALUE 1
NOCYCLE
NOCACHE;
```
这个序列将从 1 开始自增,每次增加 1,最大值为 999999999,最小值为 1,不循环,不缓存。
2. 创建表,并指定主键使用序列
```
CREATE TABLE table_name (
id NUMBER(10) PRIMARY KEY,
column1 VARCHAR2(50),
column2 VARCHAR2(50),
...
);
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT ON table_name
FOR EACH ROW
BEGIN
SELECT seq_name.NEXTVAL INTO :new.id FROM dual;
END;
```
这个触发器在每次插入数据之前,从序列中获取下一个值,并设置为主键值。
现在,每次插入一条数据时,主键将自动增加并使用序列中的下一个值。
阅读全文