【发布时间】:2015-10-17 21:59:53
【问题描述】:
为了解释我的问题,我将使用插图。假设我是店主,我有我的“商店”MYSql 数据库。然后,我为我店里的所有顾客准备了一张桌子,还有一张包含我销售的所有产品的桌子。
除了保存客户的基本详细信息(姓名、电子邮件等)外,我还希望能够保存他们创建的每个单独的购物篮。我可以自信地使用带有一维数据的 MYSql 表,例如一行代表一个用户/产品。但是,如何以有效的方式在此商店数据库中存储可变数量的购物篮,每个购物篮包含不同数量的产品 - 对于每个用户?
感谢任何建议,我对 MYSQL / 数据库设计相当陌生!
谢谢,史蒂夫。
【问题讨论】:
-
基本数据库理论:数据库中的每一列都是另一个“维度”,基本上......如果你想要多个购物篮,那么添加一个每个用户的购物篮 ID 字段。
-
您应该换一种方式思考:您有一个篮子表和一个列供客户参考。此引用是客户端 ID。
-
行不代表实体。实体由值(它们的键)表示,而行与实体/值相关。 Peter Chen 的论文
The Entity-Relationship Model : Toward a Unified View of Data定义了这些概念,数据库开发人员应该阅读。
标签: mysql database database-design