我需要帮助为数据库创建架构以保存与 Web 用户的购物车/会话相关的信息。每个会话都有一个会话 ID、一个保持创建时间的时间戳、一个到期时间戳、一个指示购买是否完成的布尔值,然后是一个产品列表,以及它们相关的数量和价格。每个用户将只有一个 ID、原始时间戳、到期时间戳和购买布尔值,但他们可能会引用一种或多种具有不同数量和价格的产品。
我最初的想法是有一个会话表和一个产品表,但我似乎无法摆脱会话 ID 和产品信息在大订单和不同会话中变得多余的想法。简而言之,如果产品表的不同行始终引用重复的产品编号和会话 ID,是否会变得混乱?
我在正确的轨道上吗?或者您能否提出一种我尚未考虑的替代设计模式?
如果您需要更多信息,请告诉我。先感谢您!
根据您的描述,您将需要以下表格(“...”表示您可能需要该实体中的其他字段):
SessionProductLink 是一个Junction table,它是您遗漏的“设计的一部分”。
斜体的字段名称是外键(它们链接到哪些字段应该很明显......)。ID 字段是前三个实体中的聚集键字段,对于 SessionProductLink,您需要一个 (ProductID, SessionID) 的复合键。(如果需要,您可以在那里使用代理键,这是您可以做出的风格决定)
您可能需要考虑的其他事项:
这就是我现在能想到的所有内容,但这应该足以让您开始。
归档时间: |
|
查看次数: |
6607 次 |
最近记录: |