| 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: | Whole Thread | Raw Message | 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
| 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 |