创建表(t_test)
create table t_test(
id number not null,
emp_code varchar2(64),
emp_name varchar2(64),
constraint pk_t_test primary key (id)
);
创建序列(t_test_sequence)
create sequence t_test_sequence
minvalue 1 -- 最小值
nomaxvalue -- 不设置最大值
start with 1 -- 从1开始计数
increment by 1 -- 每次加1
nocycle -- 一直累加,不循环
nocache; -- 不建缓冲区
创建触发器(t_test_trigger)
create or replace trigger t_test_trigger before insert on t_test for each row
when(new.id is null)
begin
select t_test_sequence.nextval into:new.id from dual;
end;
插入数据
insert into t_test (emp_name,emp_code)
values('张三','100');
insert into t_test (emp_name,emp_code)
values('李四','200');
insert into t_test (emp_name,emp_code)
values('王五','300');
结果
转载自(https://baijiahao.baidu.com/s?id=1641286336696293722&wfr=spider&for=pc)