2014-09-11 14:13 GMT-03:00 Paulo Bastos <[email protected]>: > 1. Alguem poderia me auxiliar, informando se há um impacto sinificativo > nesta utilização. Ou seja > vale a pena utilizar os comandos. > >
Caso vá repetir o mesmo comando várias vezes, há sim uma grande vantagem. Se estiver usando versão anterior à 9.2, vale a pena migrar (já para 9.3) pois há grandes melhorias nessa área. > 2. Como faço para colocar o resultado da execução em uma variavel? > Gostaria de ter o resultado > da select em um variável. > > Estou usando as intruções abaixo: > > PREPARE query_handle (integer) as select id from socic.pessoa where > id_telefone_atual = $1; > Execute query_handle(telefone_id); > > Quando executo no pgadmin funciona normalmente. Quando executo a função > que tem as instruções > da o seguinte erro; > ERRO: função query_handle(integer) não existe > LINE 1: SELECT query_handle(telefone_id) > ^ > HINT: Nenhuma função corresponde com o nome e os tipos > de argumentos informados. Você precisa adicionar conversões de tipo > explícitas. > QUERY: SELECT query_handle(telefone_id) > CONTEXT: PL/pgSQL function migracao.limpa_telefone_duplicado2() line 36 > at comando EXECUTE > NOTA: Query <NULL> > Em funções PL/pgSQL você não precisa fazer nada disso. As funções PL/pgSQL já fazem cache dos planos de execução, ou seja, é como se sempre fosse feito um PREPARE na primeira execução e EXECUTE nesta e nas demais. Resumindo, usando uma função PL/pgSQL você não precisa de prepared statements... 8-) Entretanto, uma pergunta: tem certeza que precisa executar isso 1 milhão de vezes? Já vi muita gente "socando" consultas em loops sendo que daria pra fazer num único comando. Se quiser ajuda com essa validação/verificação, abra um novo assunto e nos apresente o problema. 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
