On 10/13/06, Jean-Christophe Roux <jcxxr@yahoo.com> wrote:
>
> Thanks for the "ctid" trick. The code below worked fine
> for rec in select * from fromemail_trades loop
> update fromemail_trades set recordid = row where ctid = rec.ctid;
> row := row -1;
> end loop;
> The first line is a little different from your's:
> FOR row IN SELECT ctid, * FROM table FOR UPDATE LOOP
>
> How important is it to specify ctid in the select and to add 'for update'?
it's not. also, without a where clause you are better off just locking
the table (lock table...). also, the above loop is better achieved
via a single query.
merlin