--- Silfar Goulart de Castro <[EMAIL PROTECTED]>
escreveu:
> Pessoal eu posso passar um array para uma procedure
> ?
>
> Em caso positivo como eu manipulo este array, para
> ler o conteudo
> posição por posição ?
>
Sim.
bdteste=# \d tst_array
Tabela "public.tst_array"
Coluna | Tipo |
Modificadores
--------+-----------+--------------------------------------------------------
id | integer | not null default
nextval('tst_array_id_seq'::regclass)
campo | integer[] |
Índices:
"tst_array_pkey" PRIMARY KEY, btree (id)
bdteste=# SELECT * FROM tst_array;
id | campo
----+-------------
1 | {1,2,3,4,5}
(1 registro)
bdteste=# CREATE OR REPLACE FUNCTION op_array(ent
int[]) RETURNS int[] AS '
bdteste'# DECLARE
bdteste'# ini int;
bdteste'# fim int;
bdteste'# i int;
bdteste'# sai int[];
bdteste'# BEGIN
bdteste'#
bdteste'# ini := array_lower (ent, 1);
bdteste'# fim := array_upper (ent, 1);
bdteste'#
bdteste'# FOR i IN ini .. fim LOOP
bdteste'# sai[i] := ent[i] * 2;
bdteste'# END LOOP;
bdteste'# RETURN sai;
bdteste'# END;
bdteste'# ' LANGUAGE plpgsql;
CREATE FUNCTION
bdteste=# SELECT op_array(campo) FROM tst_array;
op_array
--------------
{2,4,6,8,10}
(1 registro)
Veja:
http://www.postgresql.org/docs/8.2/interactive/arrays.html
Osvaldo
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
http://br.mail.yahoo.com/
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral