2016-12-19 12 views
1

MS Access 2016を使用してアクセスデータベースを実装しています。いくつかの列を持つテーブルを作成しようとしています。結合された外部キー。同様のデータで[0,2]行以上を実装する

ここで、新しいテーブルの外来キーの各値を最大の2倍のに使用できるようにします。ユーザーが3回目に同じ値を使用しようとすると、エラーが発生します。

私は他の場所でこの質問に対する回答を見つけることができませんでした。

Original table: Field1 Field2 
        1  2 
        2  2 
New table: Field1(FK) Field2(FK)PK Field3 PK 
       1   2   3 
       1   2   4 
       1   2   5  <---- Generate error 

FK - 外部キー

PK - 主キー

EDIT1:は私が必要なを持っている新しい表に私はフィールド1フィールド2をしたいことを明確にしたいです機能性。

EDIT2:私の問題の例を挙げると、私はバスケットボールゲーム(Field1:StartingTime Field2:スタジアム)を持っています。この試合では2チームが必要です。したがって私はテーブルGameTeamsを持っています。しかし、2つ以上のチームが存在することはできません。したがって、この2の制限が必要です。つまり、各ゲームには2つのゲームマスターがあります。うまくいけば、これはより良い理解を与える。アクセス2010で

+0

うーん、これは疑わしいテーブルデザインのように聞こえる、または少なくとも[XY問題]のような(のhttp://meta.stac kexchange.com/a/233676/305412)。なぜこれが必要なのか説明できますか? – Andre

+1

そして、あなたの 'PK 'の使用は混乱しています - 最初の2つの行はすでに違反しています。 – Andre

+0

ああ、申し訳ありません。 3つは明らかに異なっているはずです – diaco

答えて

2

以降、あなたは一緒に... ...

QueryDesign.png

をそれぞれ(フィールド1、フィールド2)ペアに関連付けられている行をカウント保存されたクエリを使って、あなたの目標を達成することができます既存の関連する行を確認するために、あなたのテーブルの上に変更data macro前:

BeforeChange.png

+0

この返信いただきありがとうございます。私はマクロを全く使用することを考えていませんでした。それはAccess 2016でも同じ構文で完璧に動作します。 – diaco

関連する問題