接続型データアクセスと非接続型データアクセス

| コメント(0) | トラックバック(0)


ADO.net

ADO.netでは、従来のADOと違い新しいアーキテクチャでのデータアクセスが採用されている。

データソースとの接続に使用されるデータプロバイダ、非接続時でのデータアクセスを可能にするデータセットが用意されている。

 

データプロバイダにて接続型データアクセスを可能にし、必要に応じ、続されたデータソースからデータセットを作成(Fill - 充填)し、非接続のアクセスを可能にするというイメージとなる。

 

接続型データアクセス

1.Connectionオブジェクトにて、データソースとの接続を確立

2.Commandオブジェクトにてテーブルデータの取得、SQLステートメントの実行、プロシージャの呼び出しをおこなう。

3.DataReaderオブジェクトにて結果セットからデータを取得する(結果セットの取得は順方向のみ可能)※この仕様によりパフォーマンスを上げることが可能になる。

4.必要に応じTransactionオブジェクトにてトランザクション制御をおこなう。

 

非接続型データアクセス

※1?2:接続型データアクセスと同様(データソースから結果セットを取得)

1.Connectionオブジェクトにて、データソースとの接続を確立

2.Commandオブジェクトにてテーブルデータの取得、SQLステートメントの実行、プロシージャの呼び出しをおこなう。

3.非接続アクセスをおこなうため、DataAdapterオブジェクトを作成する。

4.DataAdapterオブジェクトにてデータソースから取得した結果セットを、非接続操作が可能な、Datasetオブジェクトに格納(充填)する。※DataAdapter.Fillメソッドを使用する。

5.非接続にてデータの操作をした後、DataAdapter.Updateメソッドにて更新された情報をデータソースへ反映させることが可能。

 

データアクセス

データアクセスは上記のとおり各オブジェクトを用いておこなうが、データソース(データベース)の種類に応じ各オブジェクトを使い分ける。※プログラミングモデルは共通のため同じコーディング方法にてデータアクセスが可能。

SqlConnection    ... SQLServer用

OleDbConnection  ... OLE DB(Access等)用

OracleConnection  ... Oracle用

OdbcConnection   ... ODBCデータソース用

 

同様に、xxxCommand、xxxDataAdapter、xxxTransactionオブジェクトを使い分ける。

 

 

トラックバック(0)

トラックバックURL: http://pg2se.com/mt6/mt-tb.cgi/6

コメントする