前端之家收集整理的这篇文章主要介绍了
Oracle的自动增量,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要创建一个序列和一个触发器来
自动递增表上的主键,但我不知道如何做到这一点.
创建表和序列
- sql> create table staff (
- 2 emp_id number primary key,3 staff_name varchar2(100)
- 4 );
-
- Table created.
-
- sql> create sequence emp_id_seq;
-
- Sequence created.
现在,您可以创建一个使用序列来填充主键的触发器
- sql> create trigger trg_emp_id
- 2 before insert on staff
- 3 for each row
- 4 begin
- 5 select emp_id_seq.nextval
- 6 into :new.emp_id
- 7 from dual;
- 8 end;
- 9 /
-
- Trigger created.
现在,当您插入数据时,您不需要指定EMP_ID列 – 它将自动由触发器填充
- sql> insert into staff( staff_name ) values ('Justin');
-
- 1 row created.
-
- sql> select * from staff;
-
- EMP_ID STAFF_NAME
- ---------- --------------------
- 1 Justin