「非接続型アクセス」の場合データソースからDataAdapterを通じてDataSetにデータが読み込まれ、そのDataSetに対してアクセスすることで非接続状態でのデータアクセスが可能になっている。
DataSetへのデータの読み込みは、DataAdapterのFillメソッドを使用して行われる。
またFillメソッドはデータソースへの接続、切断を必要に応じて自動的に行うので、意識的にそれらを行う必要はないようです。
Dim ds As New DataSet() 'データを受け入れるDataSetを生成する Dim adapter As New SqlClient.SqlDataAdapter("SELECT title, type FROM titles", myConStr) データソースに接続するDataAdapterを生成する 'myConStrはSQLServerへの接続文字列 adapter.Fill(ds, "titles") '生成したDataSet(ds)にDataTable(titles)を生成してデータを読み込む 'この際にtitlesは任意の名前で構わない。(データソースに依存しない)上記のコードで生成されたDataSetは次のように利用する。
- For Each~Nextで
For Each row as DataRow In ds.Tables("titles").Rows '行の参照で処理する 'row(0)やrow("title")で参照できる Next
- For~Nextで
For i As Integer = 0 To ds.Tables("titles").Rows.Count - 1 'DataSet.DataTables("テーブル名").Rows("行")("列")の参照で処理する 'ds.Tables("titles").Rows(i)("title")で参照できる Next
- データのバインドで
DataGridView.DataSource = ds DataGridView.DataMember = "titles"