2016-06-30 4 views
0

オブジェクトのテーブルを保持するデータベースを作成しようとしています。これらのオブジェクトは、2番目のテーブルのオブジェクトで構成されています。 1つのテーブルは可能なセットのテーブルであり、2つ目は可能なコンポーネントのテーブルです。セットのテーブルには、それぞれのコンポーネントのフィールドが含まれていなければなりませんが、各セットには未知数のコンポーネントがあります。必要なフィールドの数を決定するために、各セットに依存するフィールド(コンポーネント1、コンポーネント2、コンポーネント3、...)を持つテーブルを作成するにはどうすればよいですか?MS.Accessでテーブルのフィールドに依存するフィールドの数を設定する

Accessインターフェイスを使用するだけでこれを行う方法はありますか、それともその背後にあるコードに実際に入る必要がありますか?

ArrayListとして機能する列にフィールドを作成する方法があれば誰でもそのことを考えることができたら私に教えてください。

答えて

1

コンポーネントが複数のセットの一部である場合、ここで必要なものはmany-to-many relationshipです。

データベースでは、任意の数の列でこれを行うのではなく、junction tableを使用します。

表形式の表現が必要な場合は、ピボット/クロス集計クエリを使用します。

データ・モデルは次のようになります。

+--------+----------+ 
| Set_ID | Set_Name | 
+--------+----------+ 
|  1 | foo  | 
|  2 | bar  | 
+--------+----------+ 

コンポーネントを

設定

+--------------+----------------+ 
| Component_ID | Component_Name | 
+--------------+----------------+ 
|   1 | aaa   | 
|   2 | bbb   | 
|   3 | ccc   | 
|   4 | ddd   | 
+--------------+----------------+ 

ジャンクションテーブル

+----------+----------------+ 
| f_Set_ID | f_Component_ID | 
+----------+----------------+ 
|  1 |    2 | 
|  1 |    4 | 
|  2 |    1 | 
|  2 |    2 | 
|  2 |    3 | 
+----------+----------------+ 

f_外部キーのように)私は他の場所で発見したよりもはるかに優れたソリューションです

+0

。ありがとう。 – Ulthran

関連する問題