- PR -

OleDbCommandとOleDbDataAdapterのパフォーマンス

1
投稿者投稿内容
みのひき
常連さん
会議室デビュー日: 2003/07/17
投稿数: 26
投稿日時: 2004-02-02 21:06
いつもお世話になっております。

OleDbCommandとOleDbDataAdapterのパフォーマンス
について質問させてください。

VB.NETで開発しており、DBはOracle8iです。

10000件以上のInsert文を発行する場合、
OleDbCommandのExecuteNonQueryで1件ずつInsertするのと
10000件のデータをデータセットにセットし、
OleDbDataAdapterのUpdateでInsertするのと
どちらの方が処理速度が速いのでしょうか?

大量のレコードをInsertなりUpdateなりDeleteしたい場合、
上記以外に何か処理速度の早い方法があるでしょうか?

どなたかご存知の方、よろしくお願いいたします。
アティ
ベテラン
会議室デビュー日: 2003/08/14
投稿数: 91
お住まい・勤務地: KANAGAWA
投稿日時: 2004-02-02 22:36
ども、アティです。
試していないので、確実とは言えないのですが、
上記の方法は速度は変わらないと思いますよ。
OleDbDataAdapterは内部でOleDbCommandを使ってたはずなんで。
(たぶんMSDNライブラリに乗ってた気がする)
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-02-03 06:29
引用:

アティさんの書き込み (2004-02-02 22:36) より:

上記の方法は速度は変わらないと思いますよ。
OleDbDataAdapterは内部でOleDbCommandを使ってたはずなんで。
(たぶんMSDNライブラリに乗ってた気がする)


 OleDbAdapterにOleDbCommandを渡さないといけませんから、その通りです。後はループ周りをどのように作るか、ですね。
みのひき
常連さん
会議室デビュー日: 2003/07/17
投稿数: 26
投稿日時: 2004-02-04 14:02
お世話になっております。

アティさん、Jittaさん返信ありがとうございます。

言われてみればそうですね・・・
結局OleDbCommandでSQL発行してますからね。

ループ周りを再度見直したいと思います。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)