请选择 进入手机版 | 继续访问电脑版

湖南新梦想

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 313|回复: 0

Oracle序列创建和使用

[复制链接]

2493

主题

2892

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10294
发表于 2021-7-14 10:59:37 | 显示全部楼层 |阅读模式
      Oracle序列创建和使用
  创建序列
  语法 CREATE SEQUENCE 序列名 [相关参数]
  参数说明
  INCREMENT BY :序列变化的步进,负值表示递减。(默认1)
  START WITH:序列的初始值 。(默认1)
  MAXvalue:序列可生成的最大值。(默认不限制最大值,NOMAXVALUE)
  MINVALUE:序列可生成的最小值。(默认不限制最小值,NOMINVALUE)
  CYCLE:用于定义当序列产生的值达到限制值后是否循环(NOCYCLE:不循环,CYCLE:循环)。
  CACHE:表示缓存序列的个数,数据库异常终止可能会导致序列中断不连续的情况,默认值为20,如果不使用缓存可设置NOCACHE
  例
  CREATE SEQUENCE SEQ_DEMO INCREMENT BY 1 START WITH 1 NOMAXvalue NOCYCLE NOCACHE;
  修改、删除序列
  使用 alter 命令进行修改
  使用 drop 命令删除
  序列的使用
  currval 表示序列的当前值,新序列必须使用一次nextval 才能获取到值,否则会报错
  nextval 表示序列的下一个值。新序列首次使用时获取的是该序列的初始值,从第二次使用时开始按照设置的步进递增
  查询序列的值:select seq_name.[currval,nextval] from dual;
  查看所有已创建的序列:select * from user_sequences
  SQL语句中使用:insert into table (id) values (seq_name.nextval)

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|湖南新梦想 ( 湘ICP备18019834号-2 )

GMT+8, 2022-5-18 11:26 , Processed in 0.041189 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表