- 締切済み
一対一の追加が出来ません。
今回つまづいたのは、一対一のリレーションのテーブルの中で新規にレコードが追加できないことです。 テーブルをA,B,Cとします。メインとなるのがAです。B,Cは機密上テーブルを分けてあります。 新しくAのレコードを追加してそのレコードのBもしくはCにレコードを追加しようとすると下記のようにエラーになります。 「テーブル '<テーブル名>' にリレーションシップが設定されたレコードが必要なので、レコードの追加や変更を行うことはできません。」 リレーションシップが問題のようなので全てのリレーションを一旦切断して(各クエリの接合も)、A,B,Cをつなげるクエリのみで行ってもこのようなエラーになります。 また、もともとあったAのレコードに対してのB,Cの入力はエラーが出ません。新しく作ったAレコードに対してエラーが出ます。 試験的にレコードを減らしており、Aには100件、B,Cには何も入れておりません。 クエリのリレーションは外部接合で行っています。 フィールドは以下のようになっています。 A:注文ID(主)、受付日、名前、金額 B:注文ID(主)、送付日、・・・ C:注文ID(主)、・・・ 助言宜しくお願いします
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- shinkami
- ベストアンサー率43% (179/411)
回答No.1
一対一のリレーションシップは可能ですか? テーブルABC を一つのテーブルとして フォームをABCに分けると何か不都合ありますか ただし ・フォームAは追加、更新、削除可能 ・フォームB、Cは更新のみ可能で追加、削除は禁止にします
補足
>一対一のリレーションシップは可能ですか? はい。A,BとA,Cを一対一で結んでいます。 >テーブルABC を一つのテーブルとして >フォームをABCに分けると何か不都合ありますか > >ただし >・フォームAは追加、更新、削除可能 >・フォームB、Cは更新のみ可能で追加、削除は禁止にします 不都合はありませんし、現在もクエリABC(A,B,Cの全てのフィールドで外部接合してます)からフォームA,B,Cを作成しています。 しかし、やはりエラーが同じように出ます。テーブルAの所のみ入力、保存は出来ますが テーブルB,Cのフィールドに入力するとエラーになります。 既にある100件はエラーが出ないで新しく入力したレコードだけエラーが出るのが謎です。 何か解決策ございませんでしょうか?