> Eu quero na verdade cadastrar tudo de uma vez, cadastrar a feira, e
> depois os feirantes para a feira cadastrada anteriormente, mas isto eu
> quero fazer dentro de um único procedimento, claro se for possível. É
> que o exemplo é bem maior, vou ter que fazer o cadastro numas 6
> tabelas, todas dependendo da feira, por isto pode esquecer por
> enquanto o cliente.
>
> Atenciosamente,
>
> Guilherme de Carvalho Carneiro
> Analista de sistemas
> DTI |  Prefeitura Municipal de Palmas
>
>
>
>
> 2009/12/17 Osvaldo Kussama <osvaldo.kuss...@gmail.com>:
>> 2009/12/17 Guilherme Carvalho <desenvolvedor....@gmail.com>:
>>> Seria algo assim:
>>>
>>> Select from procedureInsercao(titulofeira, datafeira, listaFeirantes);
>>>
>>> listaFeirante seria uma lista/tupla/array, ou qualquer estrutura que
>>> pudesse enviar a lista de feirantes que fazem parte desta feira.
>>> listaFeirante = (feirante1, feirante2, feirante3, feirante4,
>>> feirante5)
>>>
>>
>>
>> O que você deseja cadastrar?
>> Os feirantes já estão previamente cadastrados e você quer apenas
>> registrar o relacionamento feira <-> feirante? Ou você também deseja
>> cadastrar cada feirante?
>> E sobre "clientes", que constava de seu post inicial, o que você deseja?
>>
>> Osvaldo
>> _______________________________________________
>> pgbr-geral mailing list
>> pgbr-geral@listas.postgresql.org.br
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>

Existem outras maneiras...

-- Chamada: SELECT
procedureInsercao('teste',CURRENT_DATE,'{NOME1,NOME2,NOME3,NOME4}');

CREATE OR REPLACE FUNCTION procedureInsercao(
        ptitulofeira    VARCHAR,
        pdatafeira      DATE,
        plistafeirantes VARCHAR[])
RETURNS VOID AS
$$
BEGIN
   FOR i IN 1..ARRAY_UPPER(plistafeirantes,1)
   LOOP
      RAISE INFO 'pListafeirantes[%] = %',i,plistafeirantes[i];
        --INSERT INTO tabela (titulofeira,datafeira,listafeirantes)
        --VALUES (ptitulofeira,pdatafeira,plistafeirantes[i]);
   END LOOP;
END;
$$
LANGUAGE plpgsql;












_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Reply via email to