[英]Correct way to design Many To Many Relationship
我正在用Java編程語言開發軟件,並將MySQL
用作DB。 該軟件從用戶那里收集一些輸入,然后計算/選擇他/她需要的產品。 首先,他/她創建一個項目(應該創建一個名為project的表)並計算/選擇產品,然后將其添加到項目中。 產品字段彼此不同。(因此,對於每個名為A,B,C的產品,我們都有不同的表)例如,我有3種產品類型,每個產品都有特定的字段並且彼此不同,因此用戶選擇的方式/計算每個都不相同。 產品A有3個字段(product_id,名稱,型號)產品B有7個字段(product_id,名稱,顏色,公司名稱,...。)產品C有14個字段(product_id,名稱,公司名稱,制造商,創建者) ,.....)我不能將這些產品視為一體,因為領域不同。 每個產品可以在多個項目中,並且每個項目可以具有多種類型的產品。(多對多關系)每個項目都必須保存產品。 在這種情況下,我應該在每個產品表和項目之間創建多對多關系嗎? 如果是,我以后如何再次檢索項目? 在這種情況下最佳做法是什么? 如何將這3個產品表視為一個表?
您可能想要創建一個JOIN表來管理其他兩個表中的記錄之間的相互關系。
例如:
這樣,您可以:
用法示例:
項目表:
project_id | project_name
------------+----------------
1 | Country market
2 | City carnival
產品表:
product_id | product_name
-------------+---------------
101 | Candy floss
102 | Cheeseburger
103 | Hamburger
104 | Pizza - Hawaiian
project_products表:
pp_project_id | pp_product_id
---------------+----------------
1 | 101
1 | 103
1 | 104
2 | 101
2 | 102
2 | 104
在上面的示例中...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.