oracle-序列(Sequence)

目录

1.前言

2.概念

3.创建序列

4.删除序列

5.根据序列获取主键id      


1.前言

        刚接触Oracle的时候,插入数据总出错,后来了解之后才发现Mysql跟Oracle主键不一样,Oracle得依靠序列完成自增,今天就分享下Oracle序列,文中有若有不对的地方,还请批评指正。

2.概念

        序列(SEQUENCE)是数据库的一个对象。它就是生成一个递增的整数,一般作为数据库的主键。不占用磁盘空间,占用内存。

3.创建序列

//S_METER_FACTORY 序列名,我们公司一般用S_表名来命名
CREATE SEQUENCE  S_METER_FACTORY
    MINVALUE 0          //最小值
    MAXVALUE 9999999999999999999999999999 //最大值
    START WITH 0        //生成的第一个序列号,这个值可以比最大值大但不能比最小值小
    INCREMENT BY 1      //递增1
    CACHE 20;           //设置缓存

   java中使用@keySequence注解

4.删除序列

 //S_METER_FACTORY序列名
 DROP SEQUENCE S_METER_FACTORY;

5.根据序列获取主键id      

    插入语句一般就用第一条据够了。

//获取下一个主键
SELECT S_METER_FACTORY.nextval FROM dual 

//获取当前主键,这个语句只能在获取下一个主键后才能执行,否则报错。
SELECT S_AMI_OPERATORS.currval FROM dual

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值