mirror of https://github.com/postgres/postgres
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
224 lines
6.6 KiB
224 lines
6.6 KiB
<!--
|
|
$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_sequence.sgml,v 1.5 2003/09/22 00:16:57 petere Exp $
|
|
PostgreSQL documentation
|
|
-->
|
|
|
|
<refentry id="SQL-ALTERSEQUENCE">
|
|
<refmeta>
|
|
<refentrytitle id="SQL-ALTERSEQUENCE-TITLE">ALTER SEQUENCE</refentrytitle>
|
|
<refmiscinfo>SQL - Language Statements</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>
|
|
ALTER SEQUENCE
|
|
</refname>
|
|
<refpurpose>
|
|
alter the definition of a sequence generator
|
|
</refpurpose>
|
|
</refnamediv>
|
|
|
|
<indexterm zone="sql-altersequence">
|
|
<primary>ALTER SEQUENCE</primary>
|
|
</indexterm>
|
|
|
|
<refsynopsisdiv>
|
|
<synopsis>
|
|
ALTER SEQUENCE <replaceable class="parameter">name</replaceable> [ INCREMENT [ BY ] <replaceable class="parameter">increment</replaceable> ]
|
|
[ MINVALUE <replaceable class="parameter">minvalue</replaceable> | NO MINVALUE ] [ MAXVALUE <replaceable class="parameter">maxvalue</replaceable> | NO MAXVALUE ]
|
|
[ RESTART [ WITH ] <replaceable class="parameter">start</replaceable> ] [ CACHE <replaceable class="parameter">cache</replaceable> ] [ [ NO ] CYCLE ]
|
|
</synopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>
|
|
<command>ALTER SEQUENCE</command> changes the parameters of an existing
|
|
sequence generator. Any parameter not specifically set in the
|
|
<command>ALTER SEQUENCE</command> command retains its prior setting.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Parameters</title>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">name</replaceable></term>
|
|
<listitem>
|
|
<para>
|
|
The name (optionally schema-qualified) of a sequence to be altered.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">increment</replaceable></term>
|
|
<listitem>
|
|
<para>
|
|
The
|
|
<option>INCREMENT BY <replaceable class="parameter">increment</replaceable></option>
|
|
clause is optional. A positive value will make an
|
|
ascending sequence, a negative one a descending sequence.
|
|
If unspecified, the old increment value will be maintained.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">minvalue</replaceable></term>
|
|
<term>NO MINVALUE</term>
|
|
<listitem>
|
|
<para>
|
|
The optional clause <option>MINVALUE
|
|
<replaceable class="parameter">minvalue</replaceable></option>
|
|
determines the minimum value
|
|
a sequence can generate. If <option>NO MINVALUE</option> is specified,
|
|
the defaults of 1 and -2^63-1 for ascending and descending sequences, respectively, will be used. If neither option is specified, the current minimum
|
|
value will be maintained.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">maxvalue</replaceable></term>
|
|
<term>NO MAXVALUE</term>
|
|
<listitem>
|
|
<para>
|
|
The optional clause <option>MAXVALUE
|
|
<replaceable class="parameter">maxvalue</replaceable></option>
|
|
determines the maximum value for the sequence. If
|
|
<option>NO MAXVALUE</option> is specified, the defaults are 2^63-1 and -1 for
|
|
ascending and descending sequences, respectively, will be used. If
|
|
neither option is specified, the current maximum value will be
|
|
maintained.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">start</replaceable></term>
|
|
<listitem>
|
|
<para>
|
|
The optional <option>RESTART WITH
|
|
<replaceable class="parameter">start</replaceable></option>
|
|
clause changes the current value of the sequence.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><replaceable class="parameter">cache</replaceable></term>
|
|
<listitem>
|
|
<para>
|
|
The <option>CACHE <replaceable class="parameter">cache</replaceable></option> option
|
|
enables sequence numbers to be preallocated
|
|
and stored in memory for faster access. The minimum
|
|
value is 1 (only one value can be generated at a time, i.e., no cache).
|
|
If unspecified, the old cache value will be maintained.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term>CYCLE</term>
|
|
<listitem>
|
|
<para>
|
|
The optional <option>CYCLE</option> keyword may be used to enable
|
|
the sequence to wrap around when the
|
|
<replaceable class="parameter">maxvalue</replaceable> or
|
|
<replaceable class="parameter">minvalue</replaceable> has been
|
|
reached by
|
|
an ascending or descending sequence respectively. If the limit is
|
|
reached, the next number generated will be the
|
|
<replaceable class="parameter">minvalue</replaceable> or
|
|
<replaceable class="parameter">maxvalue</replaceable>,
|
|
respectively.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term>NO CYCLE</term>
|
|
<listitem>
|
|
<para>
|
|
If the optional <option>NO CYCLE</option> keyword is specified, any
|
|
calls to <function>nextval</function> after the sequence has reached
|
|
its maximum value will return an error. If neither
|
|
<option>CYCLE</option> or <option>NO CYCLE</option> are specified,
|
|
the old cycle behaviour will be maintained.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Examples</title>
|
|
|
|
<para>
|
|
Restart a sequence called <literal>serial</literal>, at 105:
|
|
</para>
|
|
<programlisting>
|
|
ALTER SEQUENCE serial RESTART WITH 105;
|
|
</programlisting>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Notes</title>
|
|
|
|
<para>
|
|
To avoid blocking of concurrent transactions that obtain numbers from the
|
|
same sequence, <command>ALTER SEQUENCE</command> is never rolled back;
|
|
the changes take effect immediately and are not reversible.
|
|
</para>
|
|
|
|
<para>
|
|
<command>ALTER SEQUENCE</command> will not immediately affect
|
|
<literal>nextval</> results in backends,
|
|
other than the current one, that have preallocated (cached) sequence
|
|
values. They will use up all cached values prior to noticing the changed
|
|
sequence parameters. The current backend will be affected immediately.
|
|
</para>
|
|
</refsect1>
|
|
|
|
|
|
<refsect1>
|
|
<title>
|
|
Compatibility
|
|
</title>
|
|
|
|
<refsect2>
|
|
<title>
|
|
SQL99
|
|
</title>
|
|
|
|
<para>
|
|
<command>ALTER SEQUENCE</command> is a <productname>PostgreSQL</productname>
|
|
language extension.
|
|
There is no <command>ALTER SEQUENCE</command> statement
|
|
in <acronym>SQL99</acronym>.
|
|
</para>
|
|
</refsect2>
|
|
</refsect1>
|
|
</refentry>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:nil
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"../reference.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:"/usr/lib/sgml/catalog"
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
-->
|
|
|