全部產品
Search
文件中心

PolarDB:ALTER SEQUENCE

更新時間:Jul 06, 2024

更改序列產生器的定義。

文法

ALTER SEQUENCE name [ INCREMENT BY increment ]
  [ MINVALUE minvalue ] [ MAXVALUE maxvalue ]
  [ CACHE cache | NOCACHE ] [ CYCLE ]

說明

ALTER SEQUENCE 可更改現有序列產生器的參數。ALTER SEQUENCE 命令中未特別設定的任何參數都保留其先前的設定。

說明 為了避免阻塞從同一序列擷取數位並發事務,ALTER SEQUENCE 不會復原;這些更改立即生效,無法復原轉。

ALTER SEQUENCE 不會立即影響具有預分配(緩衝)序列值的後端(當前後端除外)中的 NEXTVAL 結果。在注意到更改的序列參數之前,它們將使用所有緩衝值。當前後端將立即受到影響。

參數

參數說明
name要更改的序列的名稱(可能是 schema 限定的)。
increment子句 INCREMENT BY increment 是可選的。正值將產生升序序列,負值將產生降序序列。如果未指定,則將保留舊的增量值。
minvalue可選子句 MINVALUE minvalue 確定序列可產生的最小值。如果未指定,則保留當前最小值。請注意,關鍵字 NO MINVALUE 可用於將此行為分別設定為升序和降序序列的預設值 1 和 -263-1,但此術語與 Oracle 資料庫不相容。
maxvalue可選子句 MAXVALUE maxvalue 確定序列的最大值。如果未指定,則保留當前最大值。請注意,關鍵字 NO MAXVALUE 可用於將此行為分別設定為升序和降序序列的預設值 263-1 和 -1,但此術語與 Oracle 資料庫不相容。
cache可選子句 CACHE cache 指定要預先分配多少序號並儲存在記憶體中以便更快地訪問。最小值為 1(一次只能產生一個值,即 NOCACHE)。如果未指定,則保留舊緩衝值。
CYCLECYCLE 選項允許當升序序列或降序序列分別達到 maxvalue 或 minvalue 時,序列迴繞。如果達到限制值,則產生的下一個數字將分別為 minvalue 或 maxvalue。如果未指定,則保留舊周期行為。請注意,關鍵字 NO CYCLE 可用於更改序列,使其不再迴圈,但此術語與 Oracle 資料庫不相容。

樣本

更改序列 serial 的增量值和緩衝值。

ALTER SEQUENCE serial INCREMENT BY 2 CACHE 5;