Em 19 de junho de 2012 15:01, Guimarães Faria Corcete DUTRA, Leandro
<l...@dutras.org> escreveu:
> 2012/6/19 Glauco Torres <torres.gla...@gmail.com>:
>>
>> 2012/6/19 Guimarães Faria Corcete DUTRA, Leandro <l...@dutras.org>
>>> Estu enferrujado, ou isso é um SELECT *?  Nunca faça isso.
>>
>> Seria melhor você dizer o porque de nunca fazer isso... não apenas Nunca
>> Use... você pode me dar motivos para não usar?
>
> Mil perdões, achei que fosse de conhecimento geral.
>
> SELECT * deve ser evitado em programas, porque as relações podem
> alterar e aumentar ou diminuir o número de atributos retornados, o que
> quebraria o programa.

Apenas acrescentando ao que o Dutra falou, imagine que seu código faz:

SELECT * FROM xpto ...,

e que um belo dia uma nova coluna do tipo 'bytea' é acrescentada na tabela xpto,
imagine ainda que este campo tem cerca de 500KiB cada (uma foto por exemplo).

Numa situação como esta sua função ou consulta automaticamente passaria
a trazer este campo também e, a menos que você queira este comportamento,
você estaria aumentando em 500KiB * total_registros o retorno de sua consulta.

Dependendo dos pontos críticos em que esta consulta se encontre e sua aplicação
o resultado pode ser catastrófico.

R$ 0,01
-- 
Dickson S. Guedes
mail/xmpp: gue...@guedesoft.net - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a