2017-09-05 7 views
0

問題:Microsoft Accessデータ入力フォームは新しいレコードをテーブルに書き出しません。このフォームは以前から機能していましたが、バックエンドやフォームに変更はありません複数テーブルのクエリを使用したアクセスフォームは、テーブルに書き込もうとするとエラーを返します

フォームはレコードソースとしてクエリを使用しています。クエリソースは複数のバックエンドテーブルであり、テーブル関係が定義され、参照整合性が強制されます。

フォームフィールドにデータを入力した後、フォームを閉じようとすると、次のエラーが表示されます。「関連するレコードがテーブル 'テーブルの名前'に必要なので、レコードを追加または変更できません。

私のトラブルシューティングでは、次のことが確認されています。 - エラー参照のテーブルがクエリに含まれており、それがプライマリキーのあるテーブルです。 - プライマリキーは自動番号フィールドであり、フィールドを再シードする必要はないことを確認しました。 - 破損がないことを確認しました。 - フォームに、各テーブルのすべての必須フィールドにデータを入力するために必要なフィールドがあることを確認しました。

問題の発生場所に関するご意見はありますか?

+0

これを実際に読めるようにいくつかの段落を追加してください。 –

+0

謝罪します。私はそれを読みやすくするために修正しました。 – SteveELN

+0

ああ、それはずっと良いです。エラーの原因となる表の関係を含めてください。 –

答えて

1

解決策を発見しました。 「データ入力のみ」フォームのソースを複数テーブルのクエリにバインドすると、データがテーブルの1つに書き込まれると、フォームが読み取り専用としてレンダリングされます。解決策は、サブフォームを使用して関連テーブルにデータを入力することです。

関連する問題