Assigning values to array components. - Mailing list pgsql-interfaces

From Rich Cullingford
Subject Assigning values to array components.
Date
Msg-id 3F60D485.5030807@sysd.com
Whole thread Raw
Responses Re: Assigning values to array components.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-interfaces
Hello All,
I have a small application (based on sorting inet[] arrays) that 
requires building an array of bigints, one for each inet in the array. 
This is doable in most programming languages with a notation like:
     inet_bigints[i] := inet2bigint(ip)

Unfortunately, plpgsql doesn't seem to allow that kind of assignment, as 
loading the following into psql reveals:

create or replace function foobaz()
RETURNS bigint[]
AS '
DECLARE    answer bigint[];
BEGIN  answer[1] := 12345;  RETURN answer;
END;
'
LANGUAGE 'plpgsql';

When I try to run this:

select foobaz();
WARNING:  plpgsql: ERROR during compile of foobaz near line 4
ERROR:  parse error at or near "["

The system also won't let me initialize the array in the DECLARE 
section. I've looked through the archives for the past few years for 
hints about this, but haven't found anything. Is there a plpgsql 
reference that's more 'complete' than the one that comes with the PG 
distribution?

Any help greatly appreciated.                               Rich Cullingford
rculling@sysd.com



pgsql-interfaces by date:

Previous
From: Caroline Yong
Date:
Subject: Replicate database
Next
From: Tom Lane
Date:
Subject: Re: Assigning values to array components.