2017-05-17 5 views
0

ProductCategoryテーブルのループの目的を理解したいと思います。 AdventureWorksは、Microsoftが提供するサンプルデータベースhereです。 AdventureWorksのProductCategoryテーブルにループがあるのはなぜですか?ループがオンになっているところループが右(今Dbとヴィスによって生成されたHirarchyモードで、参考図と呼ばれる)SQLスキーマの分析:AdventureWorksのProductCategoryのループの目的は何ですか?

enter image description here

ダイアグラム上でのMicrosoft SQL Server Management Studioをから

ダイアグラム右下の私はトンを引き受ける

enter image description here

答えて

1

製品カテゴリーが階層的であることを示すためにサイクルが存在する。あなたは、テーブル定義を見れば、あなたはソートのこれに私たちをオフに傾ける、次の2つのフィールドが表示されます。私が正しく理解していれば

ProductCategoryID 
ParentProductCateogoryID 

は、ラインは一般的に、親の外部キーの関係を表しています。これらの関係は、我々がに参加することができる場所も示しており、 2つのテーブルが一緒になっています。 ProductCategoryテーブルの場合、実際には自己結合を使用してこのテーブルを自身に結合できます。これは、カテゴリ階層を照会する方法です。

+0

階層型カテゴリは、各カテゴリがProductCategoryIDやParentProductCategoryIDなどの各列カテゴリ内で階層的であることを意味しますか?それとも、ProductCategoryIDに対するParentProductCategoryIDの階層構造を意味するだけですか?あるいは、それは両方の組み合わせか1つの組み合わせですか?自己参照ループはテーブルのために何か他のものを意味することはできますか? – hhh

+1

私はあなたの質問を理解していません。私が言ったように、私はそれが製品カテゴリが階層的であり、 'ProductCategory'テーブルが自己階層化されて製品階層を得ることを意味すると信じています。 –

関連する問題