On Fri, Jul 22, 2005 at 03:07:04PM +0530, Gnanavel S wrote: > On 7/22/05, Dongsoo Yoon <[EMAIL PROTECTED]> wrote: > > CREATE OR REPLACE FUNCTION arr_test() > > RETURNS NUMERIC[] AS $BODY$ > > DECLARE > > v_count NUMERIC default 0; > > v_dayIndex NUMERIC default 0; > > t_modifiedTimes NUMERIC[]; > > v_testval NUMERIC default 0; > > .... > > BEGIN > > .... > > for v_count in 1..5 loop > > v_dayIndex := v_dayIndex + 1; > > > t_modifiedTimes[v_dayIndex ] := v_count; > > You need to initialse the array, Otherwise any value added to the array will > be null.
This isn't necessary in 8.0, which we can infer is being used because of the dollar quotes. See the 8.0 Release Notes: http://www.postgresql.org/docs/8.0/static/release-8-0.html "Updating an element or slice of a NULL array value now produces a non-NULL array result, namely an array containing just the assigned-to positions." I don't recall if early 8.0 versions had any bugs in this respect, but it does indeed work in 8.0.3. -- Michael Fuhr http://www.fuhr.org/~mfuhr/ ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org