xuol001 发表于 2018-9-13 12:13:05

ORACLE实现字段自增

  下面用一个例子来说明如何实现oracle中字段的自增。
  首先,创建一个表格SuperAmin
create table SuperAdmin(  ID number(11) primary key,
  Name varchar(11) not null unique,
  Password varchar(11) not null
  
)
  然后就是创建一个序列
create sequence autoid  
start with 1
  
increment by 1
  
minvalue 1
  
nomaxvalue
  然后在插入记录的时候就可以调用上面创建的序列来实现字段的自增了。
insert into SuperAdmin(ID,Name,Password) values(autoid.nextval,'one','one')  添加多条记录之后,可以查看到ID字段是自动增长的,但是这种方法还不够方便,还需要我们手动的去输入autoid.nextval。
  接下来我们可以通过触发器来实现。创建一个触发器。
create trigger trg_superadmin_autoid  before insert on SuperAdmin
  for each row
  
begin
  select autoid.nextval into :new.ID from dual;
  
end trg_superadmin_autoid;
  插入记录
insert into SuperAdmin(Name,Password) values('three','three')  插入多条记录之后可以发现触发器也实现了同样的功能,而且在插入记录的时候更方便了


页: [1]
查看完整版本: ORACLE实现字段自增