2016-08-30 3 views
0

私は新しいデータベースデザインと優れたデータベースの設計方法を学びます。私は次のシナリオについてちょっと混乱しています。カスタマー、インダストリー、サブインダストリーについてのデータベースデザイン

今のところ、次のような顧客情報のExcelフラットテーブルがあります。

enter image description here

ある顧客は、一つの会社から来ているとのみ産業とSubindustryに属します。また、あらかじめ定義されたIndustrySubIndustryテーブルを持っていますが、customerテーブルに記録されている値は、これらの2つのテーブルからしか取得できません。

enter image description here

私は、彼らがそれぞれcustomer_tableIndustry_tableSubindustry_tableあり、三つの部分にこれらのテーブルを分けたいです。明らかに、Industry_tableSubindustry_tableは、業界が多くの下請け産業を持っている1対多の関係を持っています。ただ、このような:

enter image description here

しかし、私は、顧客、業界とsubindustry間の関係に対処する方法がわかりません。たとえば、ある新規顧客をシステムに追加したい場合は、その業界とサブインダストリーをindustry_tablesubindustry_tableから選択してデータベースにまとめて保存することができます。顧客を検索すると、該当する業界およびサブ産業情報も選択できます。

私の質問は、この関係をどのように設計するかです。

私はこのようなERダイアグラムを設計しますが、明らかにこれは顧客とサブインダストリーの間の接続を失います。

enter image description here

答えて

0

SubIndustryのみ代わりに1対多IndustryからcustomerへのCustomerSubIndustryから1対多の作成」customer表にIndustry_idの代わりにSubIndustry_idを追加し、1つの業界の一部にすることができますので、 "それは産業とサブインダストリーを含むので、より効率的です。

関連する問題