Hello.

You should use an array constructor:

DECLARE
    m_array text[];
    [..]
BEGIN
FOR m_array IN SELECT ARRAY[col_1, col_2, col_N] FROM my_table LOOP
[..]
END LOOP;

Regards,
Igrishin Dmitriy.

2009/10/9 Alberto Asuero Arroyo <albertoasu...@gmail.com>

> Hi,
>
> I need to store the result of select into an array of string:
>
>    /create or replace function search_engine.test/
>    /(/
>    /)/
>    /    returns integer as $$/
>    /declare/
>    /    m_array text[];/
>    /begin/
>    /    for m_array in select * from my_table loop/
>    /        raise notice 'valor 1: %',m_array;/
>    /    end loop;/
>    /    return 1;/
>    /end; $$ LANGUAGE plpgsql;/
>
>
> This launch this errors:
>
>    /ERROR: array value must start with "{" or dimension information
>    SQL state: 22P02
>    Context: PL/pgSQL function "test" line 4 at FOR over SELECT rows/
>
>
> Is it possible do this?? May I choose another way?
>
> Thanks in advance
>
> Alberto,
>
>
>
> --
> Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-sql
>

Reply via email to