积分转让这个动作在数据库里是做一条记录还是两条记录?

2018-12-06 08:25:37 +08:00
 azev
2474 次点击
所在节点    问与答
17 条回复
hanxiV2EX
2018-12-06 08:33:14 +08:00
是指日志记录?两条分开的日志记录
l12ab
2018-12-06 08:37:12 +08:00
我觉得像做账一样,2 条
azev
2018-12-06 08:41:27 +08:00
@hanxiV2EX
@l12ab
做一条记录的话是有什么弊端吗?
des
2018-12-06 08:42:57 +08:00
@azev
方便查询吧
imNull
2018-12-06 08:49:04 +08:00
两条
mwiker
2018-12-06 08:54:02 +08:00
一条支出,一条收入,不论明细查询还是统计时才能正确
loadsome
2018-12-06 09:00:28 +08:00
一个入账一个出账,对应不同的用户
songpengf117
2018-12-06 09:27:30 +08:00
如果是简单的一对一的积分转账日志记录的话 记一条更好 查询的时候 作为转出方的查询记录 union 上作为转入记录的查询记录

如果记两条 还需要一个额外关联字段 记录转出与转入的关系

如果比较重要的信息 或者数据量表较大的系统 例如银行转帐 还需要账户流水表 记录更多的信息
dapang1221
2018-12-06 10:00:08 +08:00
难道不是三条吗,两条对于用户的积分变动的日志,一条转账的 from-to 日志……这是两个层上的呀
imn1
2018-12-06 10:16:49 +08:00
越多越好
某年某月某日,某人给自己或他人,因为某种原因,在某地,用某设备,转出 /转入了若干金额,操作方式为……
大数据时代,应该优先记录行为,2333
zgray
2018-12-06 10:18:23 +08:00
最少两条,一进一出
zgray
2018-12-06 10:22:20 +08:00
@azev 一条的话,账万一不平呢?

对于积分操作,和钱其实一样,有 2 个基本动作:
A 流出,记录 A 转出给 B 积分:XXX
B 流出,记录 A 转入给 B 积分:XXX

这两个基本动作从数据库层面得是事务级别的,即 4 步走:
写 A 流出日志,A 账户扣款,写 B 转入日志,B 账户入账。
jason19659
2018-12-06 10:46:08 +08:00
看你们数据库的表结构啊
azev
2018-12-06 10:49:37 +08:00
感觉用一条记录完全能满足业务啊
还不用担心保存多条记录的复杂性
弊端的话 应该是查询统计不太方便
matrix1010
2018-12-06 11:32:12 +08:00
感觉属于财务问题,问问公司会计转账如何记账,或者找会计的书看看
tsaohai
2018-12-06 11:45:42 +08:00
复式记账法
Marstin
2018-12-06 15:16:43 +08:00
一条支出记录一条收入记录还有一条转让行为记录

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/514777

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX