From: | Andrew Hardy <andrew(dot)hardy(at)sabstt(dot)com> |
---|---|
To: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | DELETING then INSERTING record with same PK in the same TRANSACTION |
Date: | 2022-02-09 18:11:45 |
Message-ID: | CAKxhU8isUe6NUs7i7dJzdVeHHoK417Sv=z7jUoHZMHbezG_VkA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi,
When I:
Begin a transaction
DELETE from <table> where id (PK) = <somevalue>
INSERT INTO <table> VALUES (<values - same PK>)
...
...
...
COMMIT
I get
insert into "itinerary" ("dk", "locator") values ($1, $2) - duplicate key
value violates unique constraint "itinerary_pkey"
Do I need some particular kind of settings on my transaction to be able to
delete and insert afresh in the same transaction?
In case it is relevant - the first delete will lead to cascaded deletes on
children.
Alternatively I wonder if I change the PK column value to
"<somevalue>-FORDELETION" will I be free to insert under the same original
PK value in the same transaction, then delete the FORDELETE item just
before committing or will I hit the same issue?
Thanks,
Andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Brent Wood | 2022-02-09 18:34:29 | Re: DELETING then INSERTING record with same PK in the same TRANSACTION |
Previous Message | Tom Lane | 2022-02-09 17:49:03 | Re: Network Card Not Listening at Startup |