更改序列中的 LAST_NUMBER 值 (NEXTVAL)

Jor*_*hez 6 oracle sequence

我的问题看起来很简单,但我还没有找到解决方案。我在插入 SQL 脚本中使用 nexval 序列,但出现错误,因为 LAST_NUMBER 值尚未更新,并且其值与 tabla 数据不正确。例如,对于本例,该值为 5,表有 62 行。

我在谷歌上搜索过,但没有找到命令或更改序列的 LAST_NUMBER 参数的方法。

ALTER SEQUENCE rs2qnes0 START WITH 62;
Run Code Online (Sandbox Code Playgroud)

ALTER SEQUENCE rs2qnes0 LAST_NUMBER 62;不工作

Bal*_*app 11

更改增量,选择下一个值,将增量设置回原始值:

SQL> create sequence s1 start with 5;

Sequence created.

SQL> select last_number from user_sequences where sequence_name = 'S1';

LAST_NUMBER
-----------
          5

SQL> alter sequence s1 increment by 57;

Sequence altered.

SQL> select s1.nextval from dual;

   NEXTVAL
----------
        61

SQL> alter sequence s1 increment by 1;

Sequence altered.

SQL> select last_number from user_sequences where sequence_name = 'S1';

LAST_NUMBER
-----------
         62
Run Code Online (Sandbox Code Playgroud)

或者使用RESTART

SQL> alter sequence s1 restart start with 77;

Sequence altered.

SQL> select last_number from user_sequences where sequence_name = 'S1';

LAST_NUMBER
-----------
         77
Run Code Online (Sandbox Code Playgroud)