Você não pode recalcular um campo com o saldo porque você perderá o
histórico das movimentações.

Você deve criar uma tabela que armazena as movimentações e inserir
todas estas, seja positivas ou negativas.
Fica algo como:
cliente  valor      data
1         100.00   2009-09-09
1         -50.00    2009-09-09

Quando você fizer quiser pegar o saldo, você faz um soma(SUM) na coluna valor.

select cliente, sum(valor)
from movimentacoes
where cliente = 1
group by 1

Então é só adaptar esta idéia ao seu modelo.


2009/10/10 Bruno Carneiro <[email protected]>
>
> Quero modelar a movimentação financeira em uma conta.
>
> A conta tem um saldo inicial.
>
> A partir daí haverão várias movimentações.
>
> O saldo inicial + as movimentações vão gerar um novo saldo.
>
> Como eu devo tratar esse saldo de forma eficiente?
>
> 1- Guardar somente o saldo inicial e toda vez recalcular o saldo baseado nas
> movimentações?
> 2- Guardar o saldo atual em um campo.
>
> O problema da abordagem número dois é que toda vez que alguém fizer uma nova
> movimentação tenho que recalcular, talvez não seja o ideal.
>
> O que me sugerem?
> --
> View this message in context: 
> http://www.nabble.com/D%C3%BAvida-de-modelagem-de-contas-de-bancos-tp25834706p25834706.html
> Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



--
Tarcisio F. Sassara
Nzb ryn. Ibpê fnor dhrz? Fvz é ryn! Gnzvelf.
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a