Closed. This question is opinion-based 。它目前不接受答案。
想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文来回答。
6年前关闭。
Improve this question
假设我有一个 Web 应用程序,它是某种类型的商店。我有一张包含所有货币交易的表。
custid、orderid、支付金额等
这张表被用于销售报告和你有什么。
现在我们想给客户某种信用,礼券或退款。
将它与 -amount 一起输入到同一个表中是一个坏主意吗?还是把这些放在另一个 table 上更好?
以这种表结构开始设置站点是否存在重大缺陷?
我已经设置了一些这样的系统,但没有得到其他人的太多反馈,你们通常如何设置像db这样的商店的表。
谢谢,
肯
显然还有其他字段,如您所说的 -ve 退款值
碰巧这更接近真实世界的纸质分类帐和单独的“退款”书。
我从来没有这样做过,这只是我想出来的:-)
想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文来回答。
6年前关闭。
Improve this question
假设我有一个 Web 应用程序,它是某种类型的商店。我有一张包含所有货币交易的表。
custid、orderid、支付金额等
这张表被用于销售报告和你有什么。
现在我们想给客户某种信用,礼券或退款。
将它与 -amount 一起输入到同一个表中是一个坏主意吗?还是把这些放在另一个 table 上更好?
以这种表结构开始设置站点是否存在重大缺陷?
我已经设置了一些这样的系统,但没有得到其他人的太多反馈,你们通常如何设置像db这样的商店的表。
谢谢,
肯
最佳答案
通常情况下,您会给予退款是有原因的,因此此用例的架构已经与购买的架构不同。
那么现在您的选择是是否应该将退款存储在两个地方?拥有多个真相来源总是让我感到不舒服。
您需要决定如何计算客户的整体平衡,将进/出存储在多个位置会使这变得比应有的更难。所以你又回到了一个单独的存入/存出商店和一个单独的元数据 存储关于退款 。
Purchase
--------
PurchaseId
ItemId
CustomerId
Payment
Refund
------
PurchaseId
Reason
显然还有其他字段,如您所说的 -ve 退款值
碰巧这更接近真实世界的纸质分类帐和单独的“退款”书。
我从来没有这样做过,这只是我想出来的:-)
关于database - 在数据库中处理退款或/存储积分的最佳方式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3999789/
10-10 19:19