原文:http://lcf19890121.iteye.com/blog/2171349
oracle不同于sqlserver以及mysql,它不能直接设置某个字段进行自增,只能通过创建sequence的方式来实现自增列。
下面就来介绍下oracle实现插入自增列的方法
首先,我们需要创建一个sequence。
create sequence temp_seq increment by 1 start with 1
minvalue 1 maxvalue 9999999999999 nocache
order;
其次,在执行insert语句的时候,使用创建到的sequence.
insert into user (id,name,sex) values (temp_seq.Nextval,'Bob',1);
除了以上方法之外,我们还可以通过创建触发器的方式来实现字段自增。
create or replace trigger user_trigger
before insert on user
for each
row
begin
select temp_seq.Nextval into:new.id from sys.dual;
end;
创建触发器之后,执行insert语句就可以省略要自增的字段,如下:
insert into user (names,sex) values ('Bob',1);
以上就是oracle实现字段自增的方法,希望能帮到大家。
本文介绍了在Oracle数据库中实现自增列的两种方法:通过创建sequence以及使用触发器。sequence可以独立于表创建并用于生成唯一的连续整数,触发器则可以在插入数据前自动为指定字段赋值。
1464

被折叠的 条评论
为什么被折叠?



