.NET(へたれな)コネタ DataAdapterの各コマンドオブジェクト設定

CommandBuilderで生成されたSQLを使用するときは、以下の制約があります。

  • Selectで1個のテーブルのみ選択していること(複数のテーブルの連結不可)
  • テーブルに主キーが存在すること
  • 主キーのフィールドがSelectステートメントに含まれること

実際使用するときには、CommandBuilderで生成されたSQLを雛形として編集して利用していたけど、なれてくると、このやり方では、コード汚くなります。
各コマンドオブジェクトは、DataSetへデータ操作するときにローカルスコープで作成したほうがいいですね。とくに、DataSet内に複数テーブルを含むような場合には各テーブル用の各コマンドオブジェクトを生成する必要があります。このときSQLをストアードしておくのも良いかもしれません。