problem selecting from function - Mailing list pgsql-general

From Rikard Pavelic
Subject problem selecting from function
Date
Msg-id 4615A7D1.10103@zg.htnet.hr
Whole thread Raw
Responses Re: problem selecting from function  (Michael Fuhr <mike@fuhr.org>)
List pgsql-general
Hi!

Can someone help me with this problem.

When I select from this function I get an error

ERROR: record "red" has no field "id"
SQL state: 42703
Context: PL/pgSQL function "select_ex1" line 4 at assignment

Here is the code

create table example1(
id serial primary key,
name1 varchar(10),
value1 int);

insert into example1 values(1,'abc',2);
insert into example1 values(3,'def',5);

create function select_ex1(out id int, out name1 varchar, out value1
int) returns setof record as
$$
declare red record;
begin
    for red in select id, name1, value1 from example1 LOOP
        id=red.id;
        name1=red.name1;
        value1=red.value1;
        return next;
    end LOOP;
end
$$ language plpgsql;

and
select * from select_ex1();

It seems to me that postgres doesn't like returning parameter name
and if I change function to
create function select_ex1(out id1 int, out name2 varchar, out value2 int)
then everything is ok.

Regards,
Rikard

pgsql-general by date:

Previous
From: Joseph S
Date:
Subject: Re: ERROR: out of shared memory
Next
From: David Fetter
Date:
Subject: Re: Migrating data from mssql to postgresql