oracle主键自增长_序列及触发器实现

create table --创建表
users(user_id number not null,username nvarchar2(50) not null,sex char(2));
alter table  users add constraint user_id_key primary key(user_id);
 
create sequence hr_users_user_id --创建序列
start with 1
increment by 1;
 
insert into  users values(hr_users_user_id.nextval,'zhijian','M'); --使用序列,主键自动增长,添加数据
 
select * from users; --查询添加之后结果
 
CREATE or replace TRIGGER tiger_users BEFORE  --创建触发器
    INSERT ON users FOR EACH ROW WHEN (new.user_id is null)
begin
    select hr_users_user_id.nextval into:new.user_id from dual;  
end;
  
insert into  users(username,sex) values('zhijian','M'); --添加数据,主键自动增长
 
select * from users; --查询添加之后结果

 

posted @ 2013-08-24 15:36  待定...  阅读(307)  评论(0)    收藏  举报