Mysql 付款交易和订单表?
向数据库处理付款交易的最佳方式是什么 以下是我的想法: 订单表Mysql 付款交易和订单表?,mysql,database-design,payment,Mysql,Database Design,Payment,向数据库处理付款交易的最佳方式是什么 以下是我的想法: 订单表 医嘱ID(主键)** 成员ID(FK) 订单总数 状态(待定、正在处理) 已完成) 已支付(0,1) 付款表 PaymentID(主键) OrderID(与Orders表相关) 日期 交易状态 例如,如果付款表中有来自OrderID-123的两个付款事务 一个是下降,另一个是成功 如果有一行成功,则Orders.Paid将变为1 或者什么是更好的解决方案?以我的经验来说,拒绝和成功是不够的。在丰富多彩的使用案例中,您可能会经
- 医嘱ID(主键)**
- 成员ID(FK)
- 订单总数
- 状态(待定、正在处理) 已完成)
- 已支付(0,1)
- PaymentID(主键)
- OrderID(与Orders表相关)
- 日期
- 交易状态
或者什么是更好的解决方案?以我的经验来说,拒绝和成功是不够的。在丰富多彩的使用案例中,您可能会经历成功的付款等待资金清算(例如电子支票)、退款(由您进行)、撤销(由客户/api提供商进行)、部分退款/撤销(例如,在同一订单中,狗的玩具而不是它的食物)、撤销退款/撤销 更不用说订阅固有的各种其他情况,例如订阅升级和降级、订阅更改、取消、取消、锁定等等 不用说,如果您需要处理关联支付、无用户发票、不同的账单/发货联系人、经销商等问题,问题会变得更加棘手
很明显,准确的答案取决于您的具体要求,但我发现您最好从满足T分类账会计严格要求的模型开始(即带有科目表的借方/贷方),然后朝着特定产品的方向努力。以我的经验来说,仅仅成功和失败是不够的。在丰富多彩的使用案例中,您可能会经历成功的付款等待资金清算(例如电子支票)、退款(由您进行)、撤销(由客户/api提供商进行)、部分退款/撤销(例如,在同一订单中,狗的玩具而不是它的食物)、撤销退款/撤销 更不用说订阅固有的各种其他情况,例如订阅升级和降级、订阅更改、取消、取消、锁定等等 不用说,如果您需要处理关联支付、无用户发票、不同的账单/发货联系人、经销商等问题,问题会变得更加棘手
很明显,准确的答案取决于您的具体要求,但我发现您最好从满足T分类账会计严格要求的模型开始(即带有科目表的借方/贷方),然后逐步开发您的特定产品。不要忘记将PaymentID与其对应的OrderID相关联不要忘记将PaymentID与其对应的Denis OrderID+1相关联-尤其是在t-ledger概念方面。与付款相关的记录,甚至拖欠金额的状态更改,都应该写入一次,并且永远不要更新。这将为您提供所有转换的审核跟踪。你可能需要考虑的另一个问题是支付申请,即一个付款覆盖(多个订单的一部分)。如果你有对账单的付款(而不是发票),这一点肯定很重要。丹尼斯+1——特别是关于T分类账的概念。与付款相关的记录,甚至拖欠金额的状态更改,都应该写入一次,并且永远不要更新。这将为您提供所有转换的审核跟踪。你可能需要考虑的另一个问题是支付申请,即一个付款覆盖(多个订单的一部分)。如果您有对账单付款(与发票相反),这一点肯定很重要。