私はNewUserTable
で更新しようとしているMainUserTable
を持っています。新しいユーザーと既存のユーザーのために変更されたデータが含まれています。ODBCテーブルで実行しているがローカルテーブルで作業しているときに、このクエリが失敗するのはなぜですか?
ODBC接続のAccess Web AppテーブルであるMainUserTable
を更新するアクセス2013データベースでSQLクエリを実行しています。存在しない場合は新規ユーザーを追加し、既にテーブルに存在するユーザーの場合は変更されたデータを更新する必要があります。
UPDATE NewUserTable
LEFT JOIN MainUserTable ON NewUserTable.Username = MainUserTable.Username
SET MainUserTable.[First Name] = [NewUserTable].[First Name]
予想通り、私はローカルテーブルでこれを実行するとこれは私が次のエラーを取得することがODBCテーブルに対して実行されたときただし、新規ユーザーのための新しいレコードを作成し、既存のユーザーを更新し、作品:
ODBC--call failed.
[Microsoft][ODBC Driver Manager] - Invalid argument value (#0)
このエラーは、NewUserTable
に新しいユーザーがいる場合にのみ発生します。 MainUserTable.Username
と一致しないNewUserTable.Username
のレコードです。新しいレコードを挿入していない場合は、レコードを更新するだけで正常に動作します。
Wait ... NewUserTable(ローカル)に新しいエントリがある場合、MainUserTableで新規エントリを作成していますか?ローカルのDBとmdbかaccdbですか? – BIBD
はい。ローカルデータベースはaccdbです。 – Leisurist