Re: Bug of ALTER TABLE DROP CONSTRAINT

Поиск
Список
Период
Сортировка
От Nikhil Sontakke
Тема Re: Bug of ALTER TABLE DROP CONSTRAINT
Дата
Msg-id a301bfd90904020617p20d41a1ag63b266825f707546@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Bug of ALTER TABLE DROP CONSTRAINT  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Hi,
>>
>> Making a column into the primary key forces the column to NOT NULL.
>> You'll need to DROP NOT NULL separately.
>>
>> It's probably possible to beat on the code hard enough to fix this,
>
> Yeah it will be a matter of finding the affected column entries and invoking
> the removal of the not null entry from their corresponding pg_attribute
> rows.

Actually it's more complicated than that.  You'd need to remember
whether or not the NOT NULL was added when the primary key was added,
or whether it was there before, and only drop it if it wasn't there
before.

Hmm, and maybe that is the reason why this is not clubbed with the removal of the primary constraint. Otherwise it seems to be a matter of decompiling the conkey and generating  AT_DropNotNull nodes for the involved columns within ATPrepCmd and the rest should happen automatically. So I guess we can let it be.

Regards,
Nikhils
--
http://www.enterprisedb.com

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Magnus Hagander
Дата:
Сообщение: Path case sensitivity on windows
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Bug of ALTER TABLE DROP CONSTRAINT