pk vs unique not null differences between 8.3.4 and 8.3.8
I prepared a script to upgrade the schema in a 8.3.8 dev box and now
I was trying to replicate the change in a staging 8.3.4 box... and
it failed.
I don't have a recent backup of my dev box so I can't check if I'm
day dreaming.
This statement succede in 8.3.8
alter table shop_commerce_gift drop constraint
shop_commerce_gift_pkey;
but failed in 8.3.4.
I checked the table def in the 8.3.4 and it reports:
giftcode | character varying(16) | not null
...
Indexes:
"shop_commerce_gift_giftcode_key" UNIQUE, btree (giftcode)
but then when I try to drop the index... pg says that the index is
needed for shop_commerce_gift_giftcode_key constraint
was it something that was fixed between the releases or I just
didn't take note of what I really did in the staging box?
btw I was using the same pgsql version from my desktop to \d the
tables.
--
Ivan Sergio Borgonovo
http://www.webthatworks.it
Ivan Sergio Borgonovo <mail@webthatworks.it> writes:
This statement succede in 8.3.8
alter table shop_commerce_gift drop constraint
shop_commerce_gift_pkey;
but failed in 8.3.4.
Uh, that doesn't seem to match the name of the index?
Indexes:
"shop_commerce_gift_giftcode_key" UNIQUE, btree (giftcode)
regards, tom lane
On Mon, 02 Nov 2009 09:53:06 -0500
Tom Lane <tgl@sss.pgh.pa.us> wrote:
Ivan Sergio Borgonovo <mail@webthatworks.it> writes:
This statement succede in 8.3.8
alter table shop_commerce_gift drop constraint
shop_commerce_gift_pkey;
but failed in 8.3.4.Uh, that doesn't seem to match the name of the index?
Yep... that was my surprise.
I don't have a time machine to be absolutely sure about what I did
but I should have created a pk on both machines with a
create table shop_commerce_gift(
giftcode varchar primary key
...
);
but in the newer pg I actually find the pk constraint... in the
older I find a not null + an unique index with a different name from
the pk name of the former.
--
Ivan Sergio Borgonovo
http://www.webthatworks.it