0

表 DRG と表 DAT を 1 対 n で関連付けたい。

ID    Day    Month    Year    ForeignKeyDRG
1     01     April    1983    ?
2     07     June     2005    ?
..    ..     ..       ..

テーブル DAT

DAT は「DATEe」の略で、関連する日付のリストが含まれています。

From    To
foo     bar
..      ..

表DRG

DRG が何を表しているかは気にしないでください。これは値を持つ単なる任意のテーブルです (実際には "DateRanGe" を表していましたが、その例は意味的にはうまくいかないため、各エントリを一意に修飾する 2 つのフィールドを持つものであると仮定しましょう. )

DRG に 3 番目のフィールド ID を導入したくはありませんが、From と To からキーを結合したいと考えています。この組み合わせをテーブル DAT の外部キーとして使用するように MS-Access に指示するにはどうすればよいですか?

4

1 に答える 1

1

DRG に 3 番目のフィールド ID を導入したくない

おそらく、3 番目のフィールドが不要な理由を説明する必要があります。DRG テーブルに他のフィールドがないと仮定すると、答えは 3 番目のフィールドが必要であるということです。それ以外の場合は、From To フィールドを DAT テーブルに移動することもできます。テーブルは、主キーから主キー (1 対 1 の関係) または主キーから外部キー (1 対多の関係) を使用して相互にリンクします。2 つのフィールドを組み合わせて主キーを作成する複合キーを使用することは可能ですが、おそらく可能ではありますが、これらが関係で使用されているのはあまり見たことがありません。あなたの特定のケースでは、得られるものは何もなく、関係を形成するために両方のテーブルに From フィールドと To フィールドが必要になるため、実際にこれを試すのはばかげています。

すべてのテーブルには、主キーとして自動インクリメントの数値 ID フィールドが常に必要であると言うデータベース担当者がたくさんいます。私はデータベース プログラミングを断続的に数年間行ってきましたが、実際に自分でその方向に向かい始めています。通常、複合キーを持つことは意味がありません。両方のフィールドに同じ値を持つ 2 つのレコードが存在しないようにする場合は、両方のフィールドを含む一意のインデックスをいつでも作成できます。

于 2013-09-26T02:28:30.207 に答える