レコードを追加する際、4テーブルを結合した選択クエリに対してVBAでINSERTすると、それぞれのテーブルに新規レコードが追加されます。しかし、多対一の一側の各テーブルに既存の同一データがある場合でも、レコードが追加されてしまいます。これでは正規化した意味がありません。
希望としては、一側のテーブルには同一データがない場合にのみレコードを追加して、もし同一データがあればそのデータの主キーを多側のテーブルに入れてほしいのです。このようなことは可能でしょうか。可能な場合、どうすればよいでしょうか。不可能な場合には、その理由と対処法をご教示いただけないでしょうか。試しに一側のテーブルに複合インデックスを作成して重複を許さないようにすると、レコードが全く追加されなくなりました。
コメント(0件)