いつもお世話になっております。過去ログやSQL構文などを色々と検索したのですが、どうしてもわからず、投稿させて頂きました。AというテーブルとBというテーブルがあります。テーブル構造は全く一緒です。AのレコードのキーとBのレコードのキーが同じレコードの場合、Aテーブルのそのレコードのフィールド1とフィールド2だけをBテーブルの対応するフィールドで更新したいと思っています。最初、OleDataReaderを使いAテーブルを全件参照し、その参照中にOleCommandでBテーブルから該当箇所を取得しAテーブルをUpdateするロジックでしたが、OledataReaderを使っていると、別のOleCommandは使えないようですのでエラーになってしまいました。次にUpdate Aテーブル Select Bテーブルの様なSQLを作ったのですが、一括更新ではなく、レコードごとに別の更新なのでバグでした。Aテーブルの該当キーのみをBテーブルから取得する方法はどうしたらよろしいのでしょうか。Aテーブルの該当が1件では無く複数あります。お忙しい中とは存じますがご教授をお願い致します。引き続き自分でも調べてみます。
こんな書き方でいけるかな。(DBによってはどうだろう。)UPDATE Table1 INNER JOIN Table2 ON Table1.Key=Table2.KeySET Table1.Field1 = Table2.Field1, Table1.Field2 = Table2.Field2
GOD様有難う御座います。INNER JOIN を使えばいいのですね!Googleでも色々検索したのですが、検索の言葉が思い当たらず、「SQL構文 Select Update」などでやっていたのですが、INNER JOINを探し出せませんでした。今後の開発でもすごく役に立つご教授です。本当に有難う御座いました。