您现在的位置是:群英 > 数据库 > 关系型数据库
oracle修改sequence的方法是什么?
Admin发表于 2022-08-11 17:40:131188 次浏览
在这篇文章中我们会学习到关于“oracle修改sequence的方法是什么?”的知识,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望对大家学习或工作能有帮助。下面就请大家跟着小编的思路一起来学习一下吧。


方法:1、用DROP SEQUENCE语句删除sequence,然后用Create sequence语句重新创建一个;2、用Increment By修改序列初始值,语法为“ALTER SEQUENCE...INCREMENT BY 数值”。

本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。

oracle怎么修改sequence

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

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

1、先删除序列,然后重新创建。

这个方法比较暴力,也比较方便,如果序列有在用,会影响应用的正常使用。

如果不加条件语句,默认创建的序列格式如下:

语义Semantics:

INCREMENT BY:指定序列增长步长。可以为正(升序)、负整数(降序),但不能为0。最高精度28。

START WITH: 指定序列起始数。默认为序列最小值。

MAXVALUE :指定序列最大值。最大28位。必须大于等于起始值且大于等于序列最小值。

NOMAXVALUE: 无最大值(实际为10^27或-1)。default

MINVALUE :指定序列最小值。

NOMINVALUE :无最小值(实际为1或-10^26)。Default

CYCLE :指定序列达到最大值或最小值后继续从头开始生成。

NOCYCLE :不循环生成。Default.

CACHE :指定数据库内存中预分配的序列值个数,以便快速获取。最小cache值为2。

删除序列必须要有drop any sequence权限

语法:

例子:

DROP SEQUENCE oe.customers_seq;

2、通过Increment By来实现修改初始值。

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

1) 执行:

ALTER SEQUENCE SEQ_TEST INCREMENT BY 1000;

2) 执行:

SELECT SEQ_TEST.NEXTVAL FROM DUAL;

3) 执行:

ALTER SEQUENCE SEQ_TEST INCREMENT BY 1;



关于“oracle修改sequence的方法是什么?”的内容就介绍到这,感谢各位的阅读,相信大家对oracle修改sequence的方法是什么?已经有了进一步的了解。大家如果还想学习更多知识,欢迎关注群英网络,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: Oracle
相关信息推荐
2022-08-15 17:34:58 
摘要:在oracle中,可以利用DROP语句删除指定的用户及其所有对象,该语句用于撤销索引、表和数据库操作,当与CASCADE配合使用是就可以删除用户对象,语法为“DROP USER 用户名 CASCADE”。
2021-11-08 17:46:27 
摘要:这篇文章主要介绍oracle怎样创建表的内容,对新手学习oracle建表有一定的帮助,感兴趣的朋友可以了解看看,希望大家阅读完这篇文章能有所收获,接下来跟随小编一起来学习一下吧。
2022-11-03 17:56:36 
摘要:统计方法:1、用“COUNT(*)”统计全部查询结果,语法“SELECT COUNT(*) FROM 表名;”。2、用“COUNT(字段名)”统计非NULL的结果,语法“SELECT COUNT(列名)” FROM 表名;”。3、用“COUNT(DISTINCT 字段名)”统计去重的非NULL结果,语法“SELECT COUNT(DISTINCT 列名)” FROM 表名;”。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部