好的,需要一些帮助,
我正在创建一个系统,该系统允许用户购买网站积分并赚取它们,并使用这些积分订购产品,并访问可能出售的功能。我的问题是创建订单和交易表。我有 2 个单独的订单表,一个用于网站信用 (sitecredit_orders),一个用于产品订单 (product_orders),然后我希望能够链接到订单的 1 个交易表,我的困境是我不能只创建一个字段对于orders_id,因为它们可能在两个不同的表中重叠。并且无法合并两个订单表,因为它们保存两种不同类型的信息。我应该如何创建交易表并将其链接到这些订单表?谢谢。
最佳答案
只是为了扩展我的评论:
包含 OrderId 和 OrderType(“产品”或“网站信用”;这称为子类型鉴别器)的订单表。
Sitecredit_Orders 表,其中包含 OrderId(Orders.OrderId 的外键)以及网站积分所需的所有其他字段。
包含 OrderId(Orders.OrderId 的外键)以及产品所需的所有其他字段的 Product_Orders 表。
带有 OrderId 的交易表(Orders.OrderId 的外键)。
当您添加新的网站信用或产品订单时,您将需要插入到两个表而不是一个表中。在 Orders 中插入一条新记录,获取 OrderId(假设它是自动生成的),然后使用相同的 OrderId 在子类型表之一中插入一条记录。
关于mysql - 数据库架构设计帮助 - Mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3713212/