【问题标题】:Should I store current balance in Personal Finance App?我应该将当前余额存储在个人理财应用程序中吗?
【发布时间】:2012-02-01 22:43:09
【问题描述】:

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

基本上我会有 Transactions 表来存储费用和收入,此外我还想有另一个表(我想是 Budget 表)来存储当前余额。

每次我必须在 Transactions 中插入一行时存储当前余额并更新它是正确的方法吗?

也许最好根据交易类型(费用或收入)来计算?

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

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

谢谢。

【问题讨论】:

  • 除非您对每个用户都有大量交易,否则每次显示时计算余额几乎肯定会更好。 SQL 在这方面非常有效。

标签: database-design finance


【解决方案1】:

将计算的信息存储在数据库中几乎总是导致灾难的原因。它非常容易不同步。

您最好在需要时计算它,或者如果您的数据库使用视图支持它。

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-03
      • 2013-03-10
      • 2016-05-21
      • 1970-01-01
      相关资源
      最近更新 更多