ADO を使用して MySQL バックエンドで MS Access 2010 アプリケーションを構築しています。これまでのところ、ADO レコードセットをフォームにバインドして更新することに成功しています。ただし、INNER JOIN を持つ 2 つのテーブルを含む最初のクエリを作成したところ、両方のテーブルからフィールドが返されたときに、返されたレコードセットを更新できません。この最初のクエリで、正常にバインドおよび更新できます。
SELECT table_A.a, table_A.b
FROM table_A INNER JOIN table_B ON table_B.c = table_A.c;
ただし、table_B からフィールドを追加した瞬間、バインドされたフォームを介してレコードセットを更新できなくなります。新しい MySQL ステートメントは次のようになります。
SELECT table_A.a, table_A.b, table_B.a
FROM table_A INNER JOIN table_B ON table_B.c = table_A.c;
フォーラムを読みましたが、レコードセットの更新を妨げる通常の問題 (主キーの欠如、集計関数、SELECT DISTINCT など) がクエリに影響していないようです。いくつかのフォーラムは、私の問題がレコードセット間のあいまいさに関連している可能性があることを示唆していますが、私はこれを確認できず、これでうまくいくようです。どんな助けでも大歓迎です。