数据库关系多对多

发布于 2024-08-05 22:25:11 字数 481 浏览 7 评论 0原文

alt text http://produits-lemieux.com/database.jpg

这基本上是我的数据库结构

一种产品(比如说肥皂)将有许多零售销售尺寸

  • 1 升
  • 4 升
  • 20 升

在我的“产品”数据库中,我将有肥皂项目(id #1) 在尺寸数据库中,我将有许多可用尺寸:

  • 1升
  • 4升
  • 20升

如何不使用不同尺寸重复产品3次...我希望能够在数据库中所有可用尺寸的产品尺寸中添加复选框并检查是或否(布尔值)


得到的答案是完美的,但如何拥有这样的选项:

肥皂 [x] 1 升,[ ] 4 升,[x] 20 升

alt text http://produits-lemieux.com/database.jpg

This is basicly my database structure

one product (let say soap) will have many retail selling size

  • 1 liter
  • 4 liters
  • 20 liters

In my "produit" database I will have the soap item (id #1)
In the size database i will have many size availible :

  • 1liter
  • 4liter
  • 20liter

How not to duplicate the product 3 time with a different size... i like to be able to have check box in the product size of all the size available in the database and check if yes or no (boolean)


The answer a got is perfect, but how to have the option like that :

soap [x] 1 liter , [ ] 4 liter , [x] 20 liter

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

紧拥背影 2024-08-12 22:25:11

我不确定我是否理解您的确切场景,但要创建多对多关系,您只需创建一个“关系表”,在其中存储要链接的两条记录的 id。

例子:

Products
********
ProductID (PK)
Price

Retailers
*********
RetailerID (PK)
Name

ProductRetailerRelationships
****************************
ProductID
RetailerID

I'm not sure I understand your exact scenario, but to create a many-to-many relationship, you simply create a "relationship table", in which you store id's for the two records you want to link.

Example:

Products
********
ProductID (PK)
Price

Retailers
*********
RetailerID (PK)
Name

ProductRetailerRelationships
****************************
ProductID
RetailerID
撩心不撩汉 2024-08-12 22:25:11

多对多关系几乎总是使用中间表来建模。对于您的示例,

Product
--------
prod_numero
...

Size
--------
size_numero
...

Product_Size
--------
prod_numero
size_numero
...

Size 表将包含特定尺寸(例如 10 升),Product_Size 表创建一个 ProductSize配对。

A many-to-many relationship is almost always modeled using an intermediate table. For your example,

Product
--------
prod_numero
...

Size
--------
size_numero
...

Product_Size
--------
prod_numero
size_numero
...

The Size table would contain particular sizes (say, 10 liter) and the Product_Size table creates a Product and Size pairing.

请帮我爱他 2024-08-12 22:25:11

您将需要一个中介,或“加入”表

ProductSizes
......................
产品ID
SizeID

每种产品尺寸组合一条记录

You Will need an Intermediary, or "Join" Table

ProductSizes
.......................
ProductID
SizeID

One record for each product-size combination

素染倾城色 2024-08-12 22:25:11

根据答案,这里是建议的数据库表布局,对我来说看起来很复杂,但您确定这是执行此操作的方法,最好的解决方案吗?

替代文本 http://produits-lemieux.com/database2.jpg

Based on the answers, here is the database tables layout as proposed, it look complicated to me, but are you sure it is the way to do this, the BEST solution ?

alt text http://produits-lemieux.com/database2.jpg

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文