Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported? - Mailing list pgsql-hackers

From Rod Taylor
Subject Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported?
Date
Msg-id 1071762767.81635.13.camel@jester
Whole thread Raw
In response to Why isn't DECLARE CURSOR ... FOR UPDATE supported?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Thu, 2003-12-18 at 10:20, Tom Lane wrote:
> Is there any good reason for this restriction?
> 
> regression=# begin;
> BEGIN
> regression=# declare c cursor for select * from tenk1 for update;
> ERROR:  DECLARE CURSOR ... FOR UPDATE is not supported
> DETAIL:  Cursors must be READ ONLY.
> 
> While I have not tried it, I think that simply removing this error check
> in PerformCursorOpen() would allow the system to behave in a reasonable
> way, ie, locking each row the first time it is fetched through the
> cursor.

The help implies you can.

Command:     DECLARE
Description: define a cursor
Syntax:
DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]   CURSOR [ { WITH | WITHOUT } HOLD ] FOR query   [ FOR { READ
ONLY| UPDATE [ OF column [, ...] ] } ]
 



pgsql-hackers by date:

Previous
From: Doug McNaught
Date:
Subject: Re: plpgsql Integer Concat To String
Next
From: Sailesh Krishnamurthy
Date:
Subject: Re: OLAP CUBE/ROLLUP Operators and GROUP BY grouping sets