MS Access中三张表关联关系咨询:Transactions表关联对象确认
数据库表关系设计建议
优先建立
Orders.Order#到Transactions.Order#的一对多关系
从业务逻辑出发,TRANSACTIONS是订单的交易明细,本质上依附于具体订单存在。一个订单(Order#)可对应多笔交易明细(Transaction#),这种关联完全契合“订单-交易明细”的从属关系,能清晰体现数据的归属逻辑。不建议直接关联
Items.Item#到Transactions.Item#
虽然三张表都包含Item#,但ORDERS已经和ITEMS建立了关联。若让交易明细直接绑定商品,可能出现数据不一致的问题——比如交易明细的Item#和其所属订单的Item#不匹配,破坏数据完整性。通过订单关联的话,交易明细可通过订单间接关联到商品,既能满足查询需求,又能保障数据一致性。补充说明
若业务场景中存在同一订单包含多种商品的情况(当前ORDERS表含Item#,看起来是单商品订单模式),即便需要交易明细关联商品,也应保留与订单的关联——因为交易明细的核心归属始终是订单。
内容的提问来源于stack exchange,提问作者user4831894
相关产品推荐
相关产品推荐

