WinFormsアプリで、バイナリファイルからSQLiteDBに大量のデータを読み込んでいます。DBを検索して、新しいデータを追加するかどうかを決定します。
If LookUpResult Then
AddNewData
Else
DiscardNewData
End If
これは遅いです。INSERTには時間がかかるようです。DataTableまたはDataSetクラスを使用してデータをRAMにロードしてから、バックグラウンドタスクとしてSQLite DBに書き込む必要がありますか?または、DataTableオブジェクトから一度に多くの行を挿入する方がコストが低くなりますか?
以前はすべてのデータをカスタムクラスにロードしていましたが、高速でしたがメモリ制限に達する可能性があったため、DBに移動しました。とにかくSQLiteがINSERTをRAMにキャッシュすると思っていたでしょうが、そうではないようです。
アドバイスありがとうございます。