Declaring arrays in plpgsql functions

From: Daniel Lundin <daniel(at)helena-daniel(dot)se>
To: pgsql-sql(at)postgresql(dot)org
Subject: Declaring arrays in plpgsql functions
Date: 2002-03-25 10:04:55
Message-ID: 20020325100455.GD3337@shire
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I'm trying to convert rows from a table into a two dimensional array, and
thought I could do so in a plpgsql function, but I can't declare the return
variable as an array:

create function reservationIds(int4)
returns text[][] as '
declare
paramOriginalResNr alias for $1;

rs record;

id_src text[][];

begin
for rs in
select
src,
id
from
ReservationId
where
originalResNr = paramOriginalResNr
loop
text[array_dim(text) + 1][0] := rs.src;
text[array_dim(text) + 1][1] := rs.id;
end loop;

return id_src;
end;
'
language 'plpgsql';

, but when I select the function the parser complains: 'ERROR: parse error at
or near "["'. It seems to be the id_src declaration that's not correct; the
returns text[][] works.

I've tried text[2][30] to the same effect.

/Daniel

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message jack 2002-03-25 10:17:44 Re: About temporary table
Previous Message Tom Lane 2002-03-25 07:45:09 Re: About EXECUTE in pl/pgsql