Oracle表中序列号的添加



一、oracle数据库中

为某一table添加序列号(自增号),必须先建立序列。

create sequence userid_SEQ
minvalue 1                    //初始序号为1
maxvalue                     //不设最大序号,这里也可以设置
start with 20                //从20开始计算

increment by 1               //每次增1

NOCYCLE                      //直累加,不循环
cache 20                     //缓存20个

 

使用方式:insert userinfo values(userid_SEQ.nextval,"your名字");

这样就能在表userinfo中添加一行记录。

附加说明:

查看下一个自增号:select userid_SEQ.Nextval userid from dual;

查看当前序号:select userid_SEQ.Currval userid from dual;

 

还有另一个方法就是创建sequence之后建立一个自增触发器:如下

我们要先建立一个sequence,名字为SEQ_TEST的序列,可以只写:

create sequence SEQ_TEST;

 

建立触发器:

create or replace trigger autoincrement
before insert on test
for each row
when(new.id is null)
begin
select SEQ_TEST.Nextval into:new.id from dual;
end;

当在执行插入test表前,如果id为空则执行SEQ_TEST.Nextval获取下一个序号。

 

二、在代码中对oracle数据库进行插入操作时,我们也需要先获取id序号。

我们在数据库中先创建sequence,名为SEQ_TEST。建立一个类来获取。

使用 select SEQ_TEST.Nextval uerid from dual;

语句查询后再进行下面的插入操作。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值