Greg, > CREATE FUNCTION test_array( ) RETURNS VARCHAR[] AS ' > DECLARE > return_array VARCHAR[]; > BEGIN > return_array[0] := ''test''; > return_array[1] := ''test 1''; > return_array[2] := ''test 2''; > RETURN (return_array); > END;' > LANGUAGE 'plpgsql';
No, it's not possible to do the above. This is a flaw in the current implementation of PL/pgSQL that will not be resolved until we attract some new Postgres hackers who really care about upgrading PL/pgSQL. Currently, if you want to use an array, it has to be passed as a parameter, or come from an external table. You cannot declare an Array data type. Annoying, really. -Josh Berkus ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly