Oracle 自增主键设置
内容纲要
- 创建表
create table demo_goods( --创建表及其字段
id number(20) not null,
create_date Date,
constraint guide_pk primary key (id)); --设定表约束名(guide_pk),设置主键为id
- 设置序列
CREATE SEQUENCE demo_goods_seq --创建序列的名称-->demo_goods_seq
MINVALUE 1 --最小值
NOMAXVALUE --不设置最大值
START WITH 1 --从1开始计数
INCREMENT BY 1 --每次加1
NOCYCLE --一直累加,不循环
NOCACHE; --不建缓冲区 nocache 或者设置缓存 cache n /--其中n代表一个整数,默认值为20
- 创建触发器
create or replace trigger demo_goods_trigger -- demo_goods_trigger 触发器名称
before insert on demo_goods for each row -- demo_goods 表名
begin
select demo_goods_seq.nextval into :new.id from dual; -- :new.id demo_goods 的主键
end;
- 使用demo_goods_seq.nextval,方式来获取序列 其中demo_goods_seq是上面创建序列的名称,.nextval是获取序列值的方法, new.需要自增的主键名,new.id 其中id 就是上面建表的主键名
共有 0 条评论