2009/2/1 Scott Marlowe <scott.marlowe@gmail.com>:
> On Sat, Jan 31, 2009 at 9:04 PM, Richard Broersma
> <richard.broersma@gmail.com> wrote:
>> On Sat, Jan 31, 2009 at 3:16 PM, Andreas Wenk
>> <a.wenk@netzmeister-st-pauli.de> wrote:
>>
>>> Why does this not work:
>>>
>>> postgres=# ALTER TABLE tab1 ALTER COLUMN nr TYPE serial;
>>> ERROR: type "serial" does not exist
>>
>> serial is really just "short-hand" for making an integer column use
>> default incrementing function. The following will fully explain what
>> it is so that you can alter the column:
>> http://www.postgresql.org/docs/8.3/interactive/datatype-numeric.html#DATATYPE-SERIAL
>
> ... But it's probably more complicated than
> just making it a serial type, there's probably some question of
> setting the sequence according to the max value in the table. I'd be
> surprised if it's not on the TODO list somewhere.
>
Like:
SELECT setval('serial', max(id)) FROM distributors;
?
http://www.postgresql.org/docs/current/interactive/sql-createsequence.html
Osvaldo