On Wed, 05 Jan 2011 21:50:11 +1100, Craig Ringer
<craig(at)postnewspapers(dot)com(dot)au> wrote:
> On 01/05/2011 07:31 PM, Radosław Smogura wrote:
>
>> * you have your id, before executing query, (in contrast to all this
>> autoincrement) so you may put it in dependant rows
>
> Do you mean that with a UUID, you don't need to talk to the database
> at all, you can generate an ID with no interaction with / involvement
> with the database at all? Because other than that, there's not much
> difference in how you normally work with them.
>
>
> With a sequence, you might:
>
> CREATE SEQUENCE x_id_seq;
> CREATE TABLE x (
> id integer PRIMIARY KEY DEFAULT nextval('x_id_seq'),
> y integer
> );
> INSERT INTO x(y) VALUES (1);
>
I mean situation, when You create e.g. in one transaction, book and
chapters, in some way You need retrieve book's id, by returning clause
of insert, or by obtaining id form sequence.
It's simpler to write:
book_id = new uuid();
insert into book values(book_id,....);
insert into chapters values(new uuid(), book_id, ...);
isn't it?