我的数据库模型的有效性

Validity of my database model

在此设计之前,我的数据库模型没有 orderProducts,这意味着 productsorders 之间存在多对多关系,因为 [=17] 中的所有字段=] 有订单。我是否使用连接点 table 正确解决了这个问题?此外,我不确定如何将 userType table 与 table 相关联。谢谢。

orderProducts table 的解析很有意义,但您可以将 productName 排除在外(因为它可以来自 Product table)以减少数据冗余。同样,价格可以在产品 table.

至于将用户与现有 table 相关联,请考虑用户与订单之间的关系 - 大概每个用户可以有多个订单,但每个订单只会有一个用户,所以你有一个 -从用户到订单的多对多关系,并且可以在订单 table.

中将 user_ID 作为 FK

将 UserID 之类的内容添加到 orderProducts Table 中,然后您应该可以根据需要使用 SQL JOIN。

正如 Stidgeon 所说,您需要在订单中添加用户 ID table。由于 orderID 是唯一的,因此每个用户可以有多个订单。您不需要桥接这些 table。

您的 userType table 似乎是一个查询 table 并且应该有一个 userTypeID 字段作为主键,而不是 userID。然后将一个 UserTypeID 字段作为外键添加到您的用户 table.

请注意 table 名称应该是单数(用户、订单等)