agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
From: Heikki Linnakangas <heikki@enterprisedb.com>
To: FAST PostgreSQL <fastpgs@fast.fujitsu.com.au>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Subject: Re: Updatable cursor doubt
Date: Tue, 04 Sep 2007 10:16:31 +0100
Message-ID: <46DD226F.7060602@enterprisedb.com> (raw)
In-Reply-To: <46DCB86F.9070102@fast.fujitsu.com.au>
References: <46DCB86F.9070102@fast.fujitsu.com.au>

FAST PostgreSQL wrote:
> In CVS HEAD
> 
> workspace=# begin;
> BEGIN
> workspace=# declare cu cursor for select * from t1 for read only;
> DECLARE CURSOR
> workspace=# fetch cu;
>  a
> ---
>  1
> (1 row)
> 
> workspace=# delete from t1 where current of cu;
> DELETE 1
> workspace=# commit;
> COMMIT
> 
> Is this the intended behaviour? If so should we remove the 'READ ONLY'
> clause from the allowable syntax?
> 
> The documentation does not have 'READ ONLY' as part of the cursor syntax
> anymore.

FOR READ ONLY is actually part of the SELECT syntax. It's been accepted
for at least down to version 7.4, probably even longer than that, but it
hasn't been documented. It's accepted for the sake of compatibility with
other DBMSs (and SQL standard?), it doesn't do anything in PostgreSQL.

Now, whether we should make an effort to not allow updating a cursor on
a query with FOR READ ONLY, that's another question. I don't think it's
worth the effort, and it wouldn't really gain us anything. We probably
should mention it in the manual, in the Compatibility section of SELECT
reference page.

-- 
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com



view thread (5+ messages)  latest in thread

Message-ID: <46DD226F.7060602@enterprisedb.com>
Permalink:  ../../46DD226F.7060602@enterprisedb.com/
Also on:    postgresql.org/message-id/46DD226F.7060602@enterprisedb.com

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: heikki@enterprisedb.com, fastpgs@fast.fujitsu.com.au
  Subject: Re: Updatable cursor doubt
  In-Reply-To: <46DD226F.7060602@enterprisedb.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox