人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【DataReader,DataSet?型ごとのテーブルからのデータ取得のメリット、デメリット】
ADO.NETを使ってテーブルからデータ取得する際にいろいろなやり方があります。
DataReader,DataSet,DataTable,DataAdaptor,Datalist,DataViewこれらの使い分け方が分からず何でもDataSetでやってしまっています。
状況によって使い分けるのが正解だと思うのですが、わかりません。
ご存知の方いらっしゃいましたら教えていただけるとありがたいです。よろしくお願いいたします。

●質問者: mukoubuti
●カテゴリ:コンピュータ 生活
✍キーワード:ADO.NET デメリット データ メリット
○ 状態 :終了
└ 回答数 : 1/2件

▽最新の回答へ

1 ● angelsong
●40ポイント

http://www.techscore.com/tech/sql/

SQL -TECHSCORE-

まず、基本はDataSetで正解です。

DataReaderは、DataSetの読み取り専用バージョンです。排他等の処理が不要な分、パフォーマンスの向上が期待できます。

故に、必須のクラスという訳ではありません。


DataTableは、RDBやXMLの表そのものをイメージしていただければ良いかと思います。DataSetが扱う実データです。


DataAdaptorは、DataSetに対しSQLコマンドを発行するクラスです。SELECT,INSERT,UPDATE,DELETEを実行することが出来ます。

この辺りはご存じかとは思いますが、TechScoreのSQLセクションのURLを貼っておきます。


DataListは、Webコンポーネントのコントロールクラスなので、ADOとは無関係です。


DataViewは、ADOデータセットとWindowsフォーム・Webフォームを関連づけるクラスと言うことになるでしょうか。

フォーム側で上手く使えば、表示する対象を絞り込んだり、フォームで更新・削除された行をDataSetに反映することが可能となります。

これも、ADOクラスを使って作り込んでしまえば実現可能なのですが、より簡単・確実にコーディングが出来るために用意されているクラスですね。


イメージを簡単な図にすると・・・


「 「

|DataAdapter | DataSet

| SelectCommand| [DataTable]

| InsertCommand| → 」

| UpdateCommand| ↓

| DeleteCommand| (XML)

|DataReader |


(データベース)


といった感じでしょうか。

対象がRDBであれば、DataAdapterは必須になってくると思います。


こんな説明でイメージが掴めますでしょうか?

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ