ITPub博客

首页 > 数据库 > Oracle > [20190530]ORACLE 18c - ALTER SEQUENCE RESTART.txt

[20190530]ORACLE 18c - ALTER SEQUENCE RESTART.txt

原创 Oracle 作者:lfree 时间:2019-05-30 09:33:14 1 删除 编辑

[20190530]ORACLE 18c - ALTER SEQUENCE RESTART.txt


--//以前遇到要重置或者调整seq比较麻烦,我有时候采用比较粗暴的方式就是删除重建.

--//18c提供方式重置,自己测试看看.


1.环境:

SYSTEM@xxxxxx> select BANNER from v$version;

BANNER

----------------------------------------------------------------------

Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production


SYSTEM@xxxxxx> CREATE SEQUENCE Seq1 START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 9999;

Sequence created.


SYSTEM@xxxxxx> SELECT Seq1.nextval FROM dual;

   NEXTVAL

----------

         1


SYSTEM@xxxxxx> SELECT Seq1.nextval FROM dual;

   NEXTVAL

----------

         2


--//批量执行如下:

$ seq 500 | xargs -I{}  echo select seq1.nextval from  dual\; | rlsql system/xxxx@xxxxxx


SYSTEM@xxxxxx> SELECT Seq1.nextval FROM dual;


   NEXTVAL

----------

       503

--//现在已经到503.


SYSTEM@xxxxxx> ALTER SEQUENCE Seq1 RESTART;

Sequence altered.


SYSTEM@xxxxxx> SELECT Seq1.nextval FROM dual;

   NEXTVAL

----------

         1


--//现在回到1的位置.还可以这样执行:


SYSTEM@xxxxxx> ALTER SEQUENCE Seq1 RESTART START WITH 1500;

Sequence altered.


SYSTEM@xxxxxx> SELECT Seq1.nextval FROM dual;

   NEXTVAL

----------

      1500


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2646145/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7971388