On Feb 8, 2005, at 9:05 AM, Levente Lajko wrote:
>
>
> I have problem with a table from where I select specific field data
>
> SELECT filed1, field2 FROM tbl WHERE progress = 1 LIMIT 1
>
> through a perl script or multiple instances of that script. The
> script sets the progress value of the progressed record to 0, so that
> other processes not to access that row. I presume I would need some
> locking solution, only I haven’t found the real one.
>
>
>
> I hope somebody has a bright idea.
Maybe you are looking for SELECT FOR UPDATE as in
SELECT filed1, field2 FROM tbl WHERE progress = 1 LIMIT 1 FOR UPDATE;
This locks the row for the remainder of the transaction. See
http://www.postgresql.org/docs/8.0/interactive/sql-select.html#SQL-FOR-
UPDATE
John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL