From: | Guillaume Henriot <henriotg(at)gmail(dot)com> |
---|---|
To: | Bartosz Dmytrak <bdmytrak(at)gmail(dot)com> |
Cc: | pgsql-novice(at)postgresql(dot)org |
Subject: | Re: Returning generated id after a transaction. |
Date: | 2012-04-23 15:17:23 |
Message-ID: | CALJcmg-KRyRACYTgx_qSN8J9rBpF2UU48GsxKULVbpV3Tj5K9w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
Thank you so much for these examples, I tryed the 4th one for it's easiness
and it works perfectly ! I'm probably going to replace it with your no.2
example as soon as I have time as I do agree with you about data and
application logic.
Thanks again,
Guillaume
Le 21 avril 2012 10:26, Bartosz Dmytrak <bdmytrak(at)gmail(dot)com> a écrit :
> Hi,
> there is option no. 4 (kind of extended WITH)
>
> WITH
> inserted_row AS (
> INSERT INTO "tblParent" ("RowValue")
> VALUES ('2012-01-01'::date)
> RETURNING *
> ),
> updated_row AS (UPDATE "tblChild"
> SET "ParentRowId" = (SELECT "RowId" FROM inserted_row)
> WHERE "RowId" = 123 --whatever You need
> )
>
> SELECT "RowId" FROM inserted_row;
>
> I missed it in previous post.
> This could be part of function (SELECT statement should be modified) or
> ad-hoc query.
>
> Regards,
> Bartek
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Henriot | 2012-04-23 15:28:31 | Re: Returning generated id after a transaction. |
Previous Message | Bartosz Dmytrak | 2012-04-21 08:26:31 | Re: Returning generated id after a transaction. |