Re: SQL Transaction related

From: "A(dot) Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: SQL Transaction related
Date: 2007-05-10 06:55:52
Message-ID: 20070510065552.GC16765@a-kretschmer.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

am Thu, dem 10.05.2007, um 2:24:40 -0400 mailte Harpreet Dhaliwal folgendes:
> Hi,
>
> I have a transaction like following:
>
> BEGIN
>
> INSERT INTO tbl_xyz VALUES (val1, val2);
>
> SELECT INTO wid MAX(val1) FROM tbl_xyz;
>
> END;
>
> My question is in the SELECT INTO statement, will I get the value of val1 from
> the INSERT INTO in the same transaction

No, you get MAX(val1). If the last inserted record contains this value,
than you get it.

> even though the transaction has not ended yet.
> I think no.

Within a transaction you see everything that has gone in this
transaction. Why not?

> How would I get that latest value of val1 in the same transaction because its
> not committed yet as the transaction has not ended.

We have MVCC, and you see your own snapshot, including all results
within this transaction.

Andreas
--
Andreas Kretschmer
Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Hannes Dorbath 2007-05-10 07:03:23 Re: Replication for PG 8 recommendations
Previous Message Uwe C. Schroeder 2007-05-10 06:49:02 Re: SQL Transaction related