<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # ALTER SEQUENCE ## Name ALTER SEQUENCE?--? 更改一個序列生成器的定義 ## Synopsis ``` ALTER SEQUENCE [ IF EXISTS ] _name_ [ INCREMENT [ BY ] _increment_ ] [ MINVALUE _minvalue_ | NO MINVALUE ] [ MAXVALUE _maxvalue_ | NO MAXVALUE ] [ START [ WITH ] _start_ ] [ RESTART [ [ WITH ] _restart_ ] ] [ CACHE _cache_ ] [ [ NO ] CYCLE ] [ OWNED BY { _table_name_._column_name_ | NONE } ] ALTER SEQUENCE [ IF EXISTS ] _name_ OWNER TO _new_owner_ ALTER SEQUENCE [ IF EXISTS ] _name_ RENAME TO _new_name_ ALTER SEQUENCE [ IF EXISTS ] _name_ SET SCHEMA _new_schema_ ``` ## 描述 `ALTER SEQUENCE` 命令修改一個現有的序列發生器的參數。 任何沒有明確在 `ALTER SEQUENCE` 命令里聲明的參數都將保留原先的設置。 要使用`ALTER SEQUENCE`,你必須是該序列的所有者。 要改變一個序列的模式,你必須在新的模式上有 `CREATE` 權限。 要改變一個序列的所有者,你必須也是新的所有角色的直接或者間接的成員,并且那個角色必須有序列模式上的`CREATE` 權限。 (這些約束強制在改變所有者時只能做刪除或者創建序列時能做的操作。然而,超級用戶可以以任何方式改變任意序列的成員關系。) ## 參數 `_name_` 一個要修改的序列的名字(可以有模式修飾)。 `IF EXISTS` 當序列不存在時使用該選項不會出現錯誤信息,僅有一個提示信息。 `_increment_` `INCREMENT BY` `_increment_`選項是可選的。 一個正數會讓序列成為遞增序列,負數則成為遞減序列。如果沒有聲明,將沿用原來的遞增值。 `_minvalue_``NO MINVALUE` `MINVALUE` `_minvalue_`是一個可選選項,它決定一個序列可以生成的最小的值。 如果聲明了`NO MINVALUE`,那么將使用缺省值,對于遞增和遞減的序列分別是1和-2&lt;sup class="calibre28"&gt;63&lt;/sup&gt;-1。 如果沒有聲明則沿用當前的最小值。 `_maxvalue_` `NO MAXVALUE` `MAXVALUE` `_maxvalue_`是一個可選選項,它決定一個序列可以生成的最大的值。 如果聲明了`NO MAXVALUE`那么將使用缺省值,對于遞增和遞減的序列分別是2&lt;sup class="calibre28"&gt;63&lt;/sup&gt;-1和-1。 如果沒有聲明則沿用當前的最大值。 `_start_` `START WITH` `_start_`是一個可選選項,它修改序列的起始值。 這對序列_當前_值沒有影響;它僅設置將來的`ALTER SEQUENCE RESTART`命令將會使用的值。 `_restart_` `RESTART [ WITH` `_restart_` ]是一個可選選項,它改變序列的當前值。 這相當于用`is_called` = `false`參數調用`setval` 函數 :指定的值將會通過`nextval`的_next_調用返回。 不使用`_restart_`參數值來使用`RESTART`選項相當于使用`CREATE SEQUENCE`或由`ALTER SEQUENCE START WITH`設置的初始值。 `_cache_` `CACHE` `_cache_`選項打開序列號預分配功能以及為了快速存取而在內存中存儲的功能。 最小值是1(表示每次只能生成一個數值,沒有緩沖)。如果沒有聲明,將沿用舊的緩沖值。 `CYCLE` 可選的 `CYCLE`選項用于設置升序序列或是降序序列在達到`_maxvalue_`或者`_minvalue_`的時候循環使用。 如果達到了極限, 那么生成的下一個數字將分別是`_minvalue_`或者`_maxvalue_`。 `NO CYCLE` 如果聲明了可選的`NO CYCLE`選項,任何在序列達到其極限后對`nextval`的調用都將返回錯誤。 如果未聲明`CYCLE`或者`NO CYCLE`,那么將沿用原有的循環行為。 `OWNED BY` `_table_name_`.`_column_name_` `OWNED BY NONE` `OWNED BY`選項將序列和一個表的特定字段關聯, 這樣,如果那個字段(或整個表)被刪除了,那么序列也將被自動刪除。 如果序列已經與表有關聯后,使用這個選項后新關聯將覆蓋舊有的關聯。 指定的表必須與序列的所有者相同并且在同一個模式中。 使用`OWNED BY NONE`將刪除任何已經存在的關聯,也就是讓該序列變成"獨立"序列。 `_new_owner_` 序列新所有者的用戶名。 `_new_name_` 序列的新名稱。 `_new_schema_` 序列的新模式。 ## 注意 為避免從同一序列獲取序列值的并發事務阻塞,在序列產生參數上的`ALTER SEQUENCE`的影響從不回滾; 這些改變會立刻生效并且是不可逆的;然而,`OWNED BY`、`OWNER TO`、`RENAME TO`和`SET SCHEMA`選項會引起可被回滾的普通更新。 除了當前的正在運行取值操作,`ALTER SEQUENCE`不會立刻影響后臺的`nextval`結果 。 序列在使用完所有緩存的序列值后才會使用變化后的序列參數值。當前后臺正在運行取值操作將會立刻受到影響。 `ALTER SEQUENCE`不影響序列的`currval`狀態。(在PostgreSQL 8.3之前,有時會影響。) 由于歷史原因,`ALTER TABLE`也可用于序列;但是`ALTER TABLE`僅有的與序列有關的變化等價于前面所示的形式。 ## 例子 將序列serial設置為從105重新開始取值: ``` ALTER SEQUENCE serial RESTART WITH 105; ``` ## 兼容性 `ALTER SEQUENCE`遵從SQL標準,但`START WITH`、 `OWNED BY`、`OWNER TO`、`RENAME TO`和`SET SCHEMA`選項是 PostgreSQL的擴展。 ## 參見 [CREATE SEQUENCE](#calibre_link-42), [DROP SEQUENCE](#calibre_link-619)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看