public inbox for [email protected]  
help / color / mirror / Atom feed
From: Roman Neuhauser <[email protected]>
To: [email protected]
Subject: "FETCH returns data as if it were a SELECT result"
Date: Tue, 2 Aug 2005 17:32:48 +0200
Message-ID: <[email protected]> (raw)

"The variant of FETCH described here returns the data as if it were a
SELECT result rather than placing it in host variables."

http://www.postgresql.org/docs/current/static/sql-fetch.html

That doesn't seem to be the case. Try the following script:

CREATE TABLE t1 (t1i INT, t1c CHAR(1));
CREATE TABLE t2 (t2i INT, t2c CHAR(1));

INSERT INTO t1 VALUES (1, 'a');
INSERT INTO t1 VALUES (2, 'b');
INSERT INTO t1 VALUES (3, 'c');

BEGIN;
INSERT INTO t2 (SELECT * FROM t1);
SELECT * FROM t2;
ROLLBACK;

BEGIN;
DECLARE c1 CURSOR FOR SELECT * FROM t1;
INSERT INTO t2 (FETCH ALL FROM c1);
ROLLBACK;

The output I get:

CREATE TABLE
CREATE TABLE
INSERT 19110 1
INSERT 19111 1
INSERT 19112 1
BEGIN
INSERT 0 3
 t2i | t2c 
-----+-----
   1 | a
   2 | b
   3 | c
(3 rows)

ROLLBACK
BEGIN
DECLARE CURSOR
psql:tmp/fetch-is-unlike-select.sql:15: ERROR:  syntax error at or near "ALL" at character 23
psql:tmp/fetch-is-unlike-select.sql:15: LINE 1: INSERT INTO t2 (FETCH ALL FROM c1);
psql:tmp/fetch-is-unlike-select.sql:15:                               ^
ROLLBACK

This is on PostgreSQL 8.0.3 on i386-portbld-freebsd4.11, compiled by GCC 2.95.4

-- 
How many Vietnam vets does it take to screw in a light bulb?
You don't know, man.  You don't KNOW.
Cause you weren't THERE.             http://bash.org/?255991



view thread (3+ messages)  latest in thread

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: [email protected]
  Cc: [email protected]
  Subject: Re: "FETCH returns data as if it were a SELECT result"
  In-Reply-To: <[email protected]>

* 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