2015-02-20 16:01 GMT-02:00 Matheus Saraiva <[email protected]>:
> *funcInsertCliente(f_nome varchar, f_telefone varchar, f_endereco > integer, f_datanasc, f_filhos Filhos[]) RETURN boolean* > > *BEGIN* > * INSERT INTO Clientes* > * (* > * nome,* > * telefone,* > * endereco,* > * datanasc* > * ) VALUES($1, $2, $3, $4);* > > * INSERT INTO Filhos* > * (* > * nome,* > * idade,* > * genitor,* > * ) SELECT * FROM unnest(f_filhos);* > > * RETURN TRUE;* > > * EXCEPTION* > > * WHEN NOT_NULL_VIOLATION THEN* > * RAISE NOTICE 'Required filds are blank';* > * RETURN FALSE;* > * WHEN UNIQUE_VIOLATION THEN* > * RAISE NOTICE 'One or more unique keys were violated';* > * RETURN FALSE;* > * WHEN RESTRICT_VIOLATION THEN* > * RAISE NOTICE 'One or more restricts were violated';* > * RETURN FALSE;* > *END;* Tirando o fato da sintaxe não ser válida, funcionaria, seria inserido primeiro em "Clientes" depois em "Filhos", entretanto me parece que você esqueceu de incluir a inserção da chave de "Clientes" em "Filhos". Atenciosamente, -- Matheus de Oliveira Analista de Banco de Dados Dextra Sistemas - MPS.Br nível F! www.dextra.com.br/postgres
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
