我有像在线服务这样的项目,我已经做了一些部分并停了下来。如果用户使用服务,则必须花费一些金额(例如,每项服务5美元)。我不知道如何构建MySQL表。我已经制作了2张桌子,其余为第2张,用于加减量。可能这是错误的方式,最佳做法是什么? action_table
id | userId | reason | amount
1 | 4 | for service 3 | -5
2 | 2 | refill account | 100
3 | 13 | for service 3 | -5
balance_table
1 | 4 | 23
2 | 2 | 125
3 | 13 | 0
使用服务查询后,会向action_table
添加一行并更新balance_table
答案 0 :(得分:1)
就个人而言,如果我创建一个帐户数据库,我会有一个帐户表和一个交易表,如下所示:
Accounts:
| id | user | name | balance |
Transactions:
| id | account_id | description | amount | is_withdrawal |
我想出这个的原因是因为它有时会像现实世界对象一样考虑数据库表,在这种情况下,你有一个交易和一个帐户。
然后,您可以在添加交易时随时使用TRIGGER
更新帐户表。