1.oracle中本身没有自增功能,但可以通过触发器+序列模拟自动增长序号的功能
--1.建一个表
create table yaopin(id number,yaopin_name varchar(20));
--2.建一个序列
create sequence yaopin_seq;
/*不加参数,序列默认从1开始自增
示例:increment by 10 增量为10
minvalue 100 最小值100
maxvalue 1000 最大值1000
start with 100 从100开始
cache 10 预分配缓存
cycle|nocycle 到达最大值后复位
order|noorder 是否按顺序产生 */
--3.创建触发器
create tigger yaopin_tr
before insert on yaopin
for each row
begin
select yaopin_seq.nextval into :new.id from dual;
end;
--4.插入语法试试
insert into yaopin(yaopin_name)values('阿莫西林胶囊');
insert into yaopin(yaopin_name)values('甘草片');
insert into yaopin(yaopin_name)values('奥司他韦颗粒');
--5.查看结果
select * from yaopin;
ID YAOPIN_NAME
---------- --------------------
1 阿莫西林胶囊
2 甘草片
3 奥司他韦颗粒
|