Re: how to alter sequence.

Oliver Elphick <olly@lfix.co.uk>

From: Oliver Elphick <olly@lfix.co.uk>
To: raja kumar thatte <trajakumar@yahoo.com>
Cc: pgsql-hackers@postgresql.org, pgsql-admin@postgresql.org
Date: 2002-12-04T14:06:52Z
Lists: pgsql-hackers
On Wed, 2002-12-04 at 12:29, raja kumar thatte wrote:
> Hai friends,
> I have a sequence called raj_seq with max value 3000.
...
> now i wanted to increase the max value of the raj_seq
> to 9999999.
> How to do this change?
> If i drop and recreate the raj_seq, then i have to
> recreate the table and all triggers working on that
> table.But it is not an acceptable solution.
> So with out droping raj_seq , how do I solve this
> problem.

Unfortunately there doesn't seem to be any easy way to do this.  There
is no ALTER SEQUENCE command and you can't use UPDATE on a sequence.

Hackers: Could this be a TODO item for 7.4?


The easiest way to do this at present is probably to dump the database,
edit the dump to change the sequence max_value and then recreate the
database from the edited dump.  I presume you used CREATE SEQUENCE in
order to get such a low max_value.  If it were created from a SERIAL
datatype, you would also have to edit the table definition to use a
pre-created sequence.  There is no means of specifying a max_value using
SERIAL.

-- 
Oliver Elphick <olly@lfix.co.uk>
LFIX Limited