方法 : データセットにデータを読み込む
「データセットにデータを読み込む」という言い回しは、実際にはデータセットを構成する個々の DataTable オブジェクトにデータを読み込むことを意味します。TableAdapter クエリを実行するか、またはデータ アダプター (たとえば、SqlDataAdapter) のコマンドを実行して、データ テーブルにデータを読み込みます。
データセットを作成した方法によって、TableAdapter とデータ アダプターのいずれを使用するかが決まります。Visual Studio でデータ ソース構成ウィザードなどのデザイン ツールを使用した場合は、データセットに TableAdapter が含まれています。TableAdapter の詳細については、「TableAdapter の概要」を参照してください。プログラムでデータセットを作成した場合は、通常、データ テーブルにデータを読み込むデータ アダプターを作成する必要があります。
[!メモ]
[データ ソース] ウィンドウからフォームに項目をドラッグすると、データ テーブルにデータを読み込むコードが Form_Load イベント ハンドラーに自動的に追加されます。コード エディターでフォームを開くと、特定のテーブルにデータを読み込む構文が表示されます。フォームの読み込み時にテーブルにデータを読み込まない場合は、このコードを別のメソッドに移動するか、またはこのコード全体を削除できます。
TableAdapter を使用したデータセットへのデータの読み込み
TableAdapter のクエリを呼び出し、データセットのデータ テーブルにデータを読み込むことができます。データを読み込む DataTable を TableAdapter クエリに渡します。クエリがパラメーターを使用する場合、パラメーターもメソッドに渡します。データセットに複数のテーブルが格納されている場合は、各テーブルに対して個別に TableAdapter を用意し、各テーブルにデータを個別に読み込む必要があります。
[!メモ]
既定では、TableAdapter クエリを実行するたびに、クエリの結果がテーブルに読み込まれる前にテーブル内のデータが消去されます。TableAdapter の ClearBeforeFill プロパティを false に設定すると、テーブル内の既存のデータを保持したまま結果を追加できます。
TableAdapter を使用してデータセットにデータを読み込むには
コード エディターでフォームまたはコンポーネントを開きます。
アプリケーション内で、データ テーブルにデータを読み込む必要のある場所にコードを追加します。クエリでパラメーターを使用しない場合は、データを読み込む DataTable を渡します。コードは次のようになります。
Me.CustomersTableAdapter.Fill(Me.NorthwindDataSet.Customers)
this.customersTableAdapter.Fill(this.northwindDataSet.Customers);
クエリでパラメーターを使用する場合は、データを読み込む DataTable とクエリに必要なパラメーターを渡します。クエリの実際のパラメーターに応じて異なりますが、コードは次の例のようになります。
CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle") CustomersTableAdapter.FillByCityAndState(NorthwindDataSet.Customers, "Seattle", "WA")
customersTableAdapter.FillByCity(northwindDataSet.Customers, "Seattle"); customersTableAdapter.FillByCityAndState(northwindDataSet.Customers, "Seattle", "WA");
DataAdapter を使用したデータセットへのデータの読み込み
データ アダプターの Fill メソッドを呼び出すことができます。これにより、アダプターは SelectCommand プロパティで参照されている SQL ステートメントまたはストアド プロシージャを実行し、その結果をデータセットのテーブルに格納します。データセットに複数のテーブルが格納されている場合は、各テーブルに対して個別にデータ アダプターを用意し、各テーブルに個別にデータを読み込む必要があります。
DataAdapter を使用してデータセットにデータを読み込むには
DataAdapter の Fill メソッドを呼び出し、データを読み込む DataSet または DataTable を渡します。次に例を示します。
sqlDataAdapter1.Fill(dataset1.Tables("Customers"))
sqlDataAdapter1.Fill(dataset1.Tables["Customers"]);
通常は、データを読み込む DataTable の名前を指定します。特定のデータ テーブルの代わりに DataSet の名前を渡す場合は、Table1 という名前の DataTable をデータセットに追加し、データベースから結果を読み込みます (これは、データセットの既存の DataTable にデータを読み込む場合と異なります)。詳細については、「Populating a DataSet from a DataAdapter」を参照してください。