2015-04-15 15:45 GMT-03:00 Matheus Saraiva <matheus.sara...@gmail.com>:
> Uma função deve inserir um registro em uma tabela e retornar a PK do > registro inserido, porém, a PK da tabela é uma chave composta. Qual deve > ser o tipo de retorno da função e como fazer o retormo? > > Exemplo: > > TBLCONTA > --------- > cliente integer PK > tipoconta smallint PK > banco varchar(30) > agencia varchar(10) > conta varchar(10) > Eu usaria parâmetros OUT, exemplo: CREATE FUNCTION sua_funcao(p_banco varchar, p_agencia varchar, p_conta varchar, OUT p_cliente integer, OUT p_tipoconta smallint) LANGUAGE plpgsql AS $$ BEGIN INSERT INTO tblconta(...) VALUES(....) RETURNING cliente, tipoconta INTO p_cliente, p_tipoconta END; $$; Assim sua função retorna na saída os valores que estiverem em "p_cliente" e "p_tipoconta", ou seja, ela irá retornar uma linha e duas colunas. 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 pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral