关于oracle设置主键自增的问题

关于orcale设置主键自增的问题

关于主键Oracle中并没有提供一个直接的语句设置,对于这个oralce一般都是用序列和触发器来实现

一下又两种方法来实现

一 ,不使用触发器

创建序列:

create sequence se_auto_increment
increment by 1--序列递增值
start with 1 --开始值
maxvalue 999;--最大值

创建一张表

create table tab (no number(10) primary key ,name varchar2(20));

直接用序列插入即可

insert into tab values(se_auto_increment.nextval,'tom');

二,使用触发器实现自增

创建一个触发器

create trigger auto_trri before insert on tab for each row
  2  begin
  3  select se_auto_increment.nextval into :new.userno from dual;
  4  end;
  5  /

插入数据

insert into tab(name) values('ketty');

这里插入时要注意要写明插入的字段名,直接插入会出错

posted @ 2018-12-03 22:47  繁声物语  阅读(570)  评论(0编辑  收藏  举报