Re: order by in cursor declaration does not allow update

From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: Dharmendra Goyal <dharmendra(dot)goyal(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: order by in cursor declaration does not allow update
Date: 2007-10-25 11:05:07
Message-ID: 1193310307.4242.257.camel@ebony.site
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 2007-10-25 at 12:28 +0530, Dharmendra Goyal wrote:
> If a cursor is declared using "Order by" then it gives following
> error
> during updation of the cursor:
> ERROR: cursor "c" is not a simply updatable scan of table "test"
> Ex:
> DROP TABLE IF EXISTS test;
> create table test (num int,num2 int );
> insert into test values(1,100);
> insert into test values(2,200);
> insert into test values(3,300);
> insert into test values(4,400);
> insert into test values(5,500);
> BEGIN;
> DECLARE c CURSOR FOR SELECT * FROM test ORDER BY num;
> FETCH 2 FROM c;
> UPDATE test SET num = 500 WHERE CURRENT OF c;
> ERROR: cursor "c" is not a simply updatable scan of table "test"

> Comments for this...??

You haven't specified FOR UPDATE on the query in the DECLARE clause.

--
Simon Riggs
2ndQuadrant http://www.2ndQuadrant.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Zdenek Kotala 2007-10-25 11:07:13 Re: MaxOffsetNumber versus MaxHeapTuplesPerPage
Previous Message Heikki Linnakangas 2007-10-25 10:16:50 Re: MaxOffsetNumber versus MaxHeapTuplesPerPage