Em 07/02/16, Saraiva Silva<matheus.sara...@gmail.com> escreveu:
> Pois é, meu interesse é porque eu tenho funções que fazem inserções e
> updates. Como não é possível saber quais colunas o usuário irá atualizar,
> então minha função de atualização tem parâmetros para todas as colunas. Mas
> em uma tabela com 15 colunas, e o usuário alterar apenas uma coluna de um
> registro, a função vai desperdiçar recursos. Pois ela irá atualizar todas
> as outras colunas com dados repetidos.
> O desafio é atualizar somente as colunas que realmente foram alteradas.
> Como exemplo uma função que faz update em uma tabela de CEPs:
>
> http://paste.ubuntu.com/14962205/
>
> Como fazer a função atualizar somente as colunas alteradas?
>


Creio que você deveria dar uma estudada no modelo MVCC utilizado pelo
PostgreSQL.
http://www.postgresql.org/docs/current/interactive/mvcc.html
A cada updade uma nova versão do registro é gerada, ou seja, o
possível desperdício de recursos é mínimo frente a reescrever todo o
registro.

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

Responder a