分类目录

登录

统计信息

  • 日志总数:231篇
  • 评论总数:259条
  • 分类总数:3个
  • 标签总数:510个
  • 友情链接:11个
  • 网站运行:3000天

西安市公共自行车 微信小程序 入口扫描,扫我进入~

个人信息

·网名:青年白
·生日:1991年9月17日
·博客: http://www.baikeyang.com
·邮箱:baikeyang@vip.qq.com
·籍贯: 陝西省汉中市
·工作: 杭州鸿泉数字设备有限公司
·职位:Java软件开发工程师
·地址:西安市高新区丈八一路绿地SOHO
·   同盟A座606室
·时间:2015.07─至今
·工作: 西安易一电子科技有限公司
·职位:Java中级软件开发工程师
·地址:西安市高新区科技二路软件园
·   西岳阁403室
·时间:2014.05─2015.06
·工作:陕西齐力集团
·职位:初级软件开发工程师
·地址:西安市建工路19号新城科技产业园
·   华企大厦7层
·时间:2013.05─2014.04
现在位置:    首页 > 技术乱弹 > 正文
Oracle修改序列(Sequence)起始值的方法
技术乱弹 评论(1)

 

Oracle 序列(Sequence)主要用于生成流水号,在应用中经常会用到,特别是作为ID值,拿来做表主键使用较多。

但是,有时需要修改序列初始值(START WITH)时,有同仁使用这个语句来修改:alter sequence sequencename start with xxxxxxxx。但是,在Oracle DB中,修改序列没有这样的语法。下面介绍几种修改方式:

1.先删除序列,然后重新创建。不过这不是当前要讲的重点。这个方法比较暴力,也比较方便,如果序列有在用,会影响应用的正常使用。

2.写个循环来增加。如果需要增加500,写个循环运行500次SELECT SEQUENCE_NAME.NEXTVAL FROM DUAL;

3.通过Increment By来实现修改初始值。

例如:若序列名称是SEQ_TEST,初始值是13,而现在要设置初始值为1013,Increment By值为:1000(1013-13)

1) 执行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1000;   — 设置当前序列递增1000,当前序列为13

2) 执行:SELECT SEQ_TEST.NEXTVAL FROM DUAL;  — 当前序列为1013

3) 执行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1;  — 设置当前序列递增1000,当前序列为1013

 

本文版权归青年博客所有,转载引用请完整注明以下信息:
本文作者:BaiKeyang
本文地址:Oracle修改序列(Sequence)起始值的方法 | 青年博客

Oracle修改序列(Sequence)起始值的方法:目前有1 条留言

  1. 营销软件 : 2018年03月05日15:53 回复

    新年虽已过,好运不打折!

发表评论

留言无头像?