我应该在Personal Finance App中存储当前余额吗?

时间:2012-01-03 23:09:38

标签: database-design finance

我正在尝试为个人理财应用设计数据库结构。

基本上我会有交易表,它会存储费用和收入,除此之外我想要另外一张表(我想预算表)来存储目前的平衡。

每次我必须在交易中插入一行时,存储当前余额并更新它是否正确?

根据交易类型(费用或收入)计算它可能更好吗?

有一个类似的问题here,但我想有更好的方法来处理这类数据。

我认为没有最佳实践,它几乎总是取决于,但我应该选择哪种数据库结构?

感谢。

2 个答案:

答案 0 :(得分:5)

它几乎总是将计算信息存储在数据库中的灾难处方。它非常容易让它失去同步。

在您需要时计算它,或者如果您的数据库使用View支持它,您会好得多。

答案 1 :(得分:0)

这不是黑色或白色的答案,取决于您的非功能,即访问您网站的用户数量。您可以拥有两全其美的解决方案,只有在基础交易更新时才计算。这是我在创建a personal budgeting website时使用的方法。

这意味着可以非常快速地读取计算,并且可以在后台进行重新计算,对用户不可见,但对于大多数配置而言是最佳的。