I am trying to print values of an array one by one, but it doesn't work.

For example, if i want to print entire array at once, it does work:

CREATE OR REPLACE FUNCTION "public"."test_func" () RETURNS integer AS
$body$
declare
  i int;
  v_arr integer[] = '{0, 1}';
begin

  v_arr[1] := 5;
  v_arr[2] := 7;

  raise info 'entire array: %', v_arr;

  return 0;

end
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

But then if I try this:

CREATE OR REPLACE FUNCTION "public"."test_func_new" () RETURNS integer AS
$body$
declare
  i int;
  v_arr integer[] = '{0, 1}';
begin

  v_arr[1] := 5;
  v_arr[2] := 7;

  raise info '1st element: %', v_arr[1];

  return 0;

end
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

.. and it doesn't compile.

Can someone help me? Thanks!

-- 
Regards,
Kiryl Mauryshchau

Reply via email to