我想知道人们如何安全地将资金余额存储在数据库中。例如,您如何确保数据库管理员不修改余额或交易?如何确保流氓员工无意或无意进行交易的代码无法正常工作。
银行,PayPal以及以美元或任何其他货币持有余额的任何其他应用都应该出现此问题
答案 0 :(得分:0)
我使用的所有银行套餐都将余额存储在帐户实体中。从运动历史中动态计算它是不可想象的。
正确的方法是:
有些系统将所有动作存储为正数,并通过反转from / to字段或带有标志来表示信用/借记。就个人而言,我更喜欢信用额度,借记字段和签名金额,这使得逆转更容易理解。
请注意,这些方法适用于现金和证券。
证券交易可能会更加棘手,特别是对于公司行为,您需要提供一笔交易,以更新一个或多个买方和卖方的现金余额,其担保头寸余额以及可能的经纪人/存款。
来自smirkingman的Database design: Calculating the Account Balance 回复