Alípio,

Há um tempo atrás resolvi esse problema criando cadeia de triggers nas
minhas tabelas de interesse, fazendo com que através dos objetos NEW e
OLD (no momento do processamento da trigger), eu conseguisse gravar em
uma terceira tabela somente as diferenças dos valores (em caso de
UPDATE), ou informações de DELETE e INSERT, juntamente com dados da
operação (timestamp, usuário, entre outros). Isso funcionava como um
Audit Table de garagem.

Se eu não me engano (me corrijam por favor), o PostgreSQL tem o Table
Audit, que provavelmente ajudará você a resolver seu problema.

Boa sorte,

Bruno Simioni.


2010/3/9 Alipio Dantas <[email protected]>:
> Srs.
>
> Preciso manter um histórico de atualizações em determinadas tabelas do
> banco, ou seja quando um registro for alterado, ser mantido também o valor
> anterior.
>
> Pensei em replicar os dados em uma mesma tabela, o que não é legal, a tabela
> ficaria com um volume de informações que não é acessado com frequencia.
>
> Pensei em "clonar a view" dentro do banco e inserir nas tabelas referentes
> as linhas atualizadas com a data de atualização. Pra isso o ideal seria uma
> triger que fizesse este procedimento quando um dado for alterado. O problema
> é que não sei por onde começar.
>
>
>
> Alguém poderia me indicar um caminho?
>
> Obrigado.
>
>
>
> --
> Alípio Dantas da Silva
> Secretaria de Desenvolvimento Urbano do Estado da Bahia
> Coordenação de Informações Geográficas Urbanas - CGI
>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a