Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported?
| От | Rod Taylor |
|---|---|
| Тема | Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported? |
| Дата | |
| Msg-id | 1071762767.81635.13.camel@jester обсуждение исходный текст |
| Ответ на | Why isn't DECLARE CURSOR ... FOR UPDATE supported? (Tom Lane <tgl@sss.pgh.pa.us>) |
| Ответы |
Re: Why isn't DECLARE CURSOR ... FOR UPDATE supported?
|
| Список | 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 по дате отправления: