Thread: converting unique index into primary key

converting unique index into primary key

From
"Ed L."
Date:
I need to convert an existing unique index on a very heavily inserted table
into a primary key.  Alter table works, but locks the table for too long.
As a hack, can I just set pg_index.indisprimary = 't' and
pg_constraint.contype = 'p' for the appropriate row in each?  This is for
7.4.6 and 8.0beta3...

TIA...

Ed


Re: converting unique index into primary key

From
Tom Lane
Date:
"Ed L." <pgsql@bluepolka.net> writes:
> I need to convert an existing unique index on a very heavily inserted table
> into a primary key.  Alter table works, but locks the table for too long.
> As a hack, can I just set pg_index.indisprimary = 't' and
> pg_constraint.contype = 'p' for the appropriate row in each?  This is for
> 7.4.6 and 8.0beta3...

Don't forget to make the underlying columns notnull, too.

            regards, tom lane