Re: Need to select and update with the same sql statement - Mailing list pgsql-php

From scott.marlowe
Subject Re: Need to select and update with the same sql statement
Date
Msg-id Pine.LNX.4.33.0211131300360.32021-100000@css120.ihs.com
Whole thread Raw
In response to Need to select and update with the same sql statement  ("David Busby" <busby@pnts.com>)
List pgsql-php
On Wed, 13 Nov 2002, David Busby wrote:

> List,
>     I need to do a command like:
>
>     select * from "table" where "id"=54; update "table" set "col"=value
> where "id"=just selected id
>
>     Is that possible?  How would I work that into a StoredProcedure? I'm
> getting a race condition where two+ clients are asking for data but getting
> the same record, (each record is a datachunk for a distributed client).
> This results in each client working on the same data, not good.  Any ideas?
> I'm posting to the php/sql list cause the clients ask for the datachunk via
> SOAP request that is processed via PHP.  Any assistance would be great

It's time for transactions!

You should be able to do this in a transaction:

(pg_exec the SQL code here)
begin;
select * from table where "id"=54;
(assign the id to a var $id here)
update "table" set "col"=$value where "id"=$id;
end;

This should happen in such a way that other users can't see what's
happening until it's done.


pgsql-php by date:

Previous
From: "David Busby"
Date:
Subject: Need to select and update with the same sql statement
Next
From: "David Busby"
Date:
Subject: Re: Need to select and update with the same sql statement