ホーム > SQL Server, データベース > SQL Server Compact 3.5のSqlCeDataReaderをリードすると異常に遅い…

SQL Server Compact 3.5のSqlCeDataReaderをリードすると異常に遅い…

2009 年 4 月 23 日

SqlCeDataReaderをリードすると異常に遅い

photo by Bеn

SQL Server Compact 3.5のSqlCeDataReaderを使用して、”While”ステートメントでループ処理を行い、データをリード。

SQL Server 2008 ExpressではSqlDataReaderを使用して、同様の処理を行えますが処理時間が異常に違います。

なにか、設定が必要なのか?といっても、SqlCeDataReaderにはSeekぐらいしか見あたらないし……

顧客データをたった800件、FlexGridに表示していくという処理を行ったのですが、

SQL Server 2008 ExpressではSqlDataReaderで、約0.7秒

SQL Server Compact 3.5のSqlCeDataReaderで、約7~8秒

10倍近く違います……

たったの800件ですから、4000件になったと仮定すると5倍の約35~40秒って、使えないよこれじゃ~。

とりあえず、解決策がみつかるまでSqlCeDataReaderの使用は軽いとこだけで使用し、コントロールのDataSourceにSqlCeDataAdapterにセットしたテーブルをセットすることとします。

このDataSourceとSqlCeDataAdapterを使った方法だと、0.3秒で処理できるので、なにか設定しだいでSqlCeDataReaderでも速くなるのか、もともと遅いのか現段階で、はっきりしません。

この件で、なにか分かればまたエントリーします。

関連するエントリー

    None Found

SQL Server, データベース , , , , , ,

  1. コメントはまだありません。
  1. トラックバックはまだありません。