Visual Studioでsqliteデータベースに大量の埋め込みを実行する必要があります。誰もこれを行う方法を知っていますか?SQLite.Netデータベースへの一括挿入
答えて
通常の挿入文を作成し、データセットをループし、関連するデータをデータベースに対して実行する前にクエリ文字列に挿入することができます。
SQLiteを使用すると、トランザクションを開き、すべてのデータをループし、関連するSQL INSERTコマンドを実行し、トランザクションをコミットすることでこれを実行できます。これはSQLiteで一括して挿入する最も速い方法です。
これは、どのADO準拠のDBドライバでも最も速い方法です:http://sqlite.phxsoftware.com/forums/t/134.aspx BeginTransactionの前に接続を開く必要があります。 – basarat
私は同じことをする必要があった、私はSqlite.Netフォーラムでこの答えを見つけた、誰かにとって興味深いかもしれない。
ページが存在しませんこれ以上の理由で、回答には回答が含まれている必要があり、追加情報のリンクを追加することができます。 – Rick
私はSQLiteの中に大量の挿入を容易支援するクラスを書きました。うまくいけば、それは便利です:
http://procbits.com/2009/09/08/sqlite-bulk-insert/
-jp
private void prepareConnectionForBulkInsert(SQLiteConnection cn)
{
SQLiteCommand stmt;
stmt = new SQLiteCommand("PRAGMA synchronous=OFF", cn);
stmt.ExecuteNonQuery();
stmt = new SQLiteCommand("PRAGMA count_changes=OFF", cn);
stmt.ExecuteNonQuery();
stmt = new SQLiteCommand("PRAGMA journal_mode=MEMORY", cn);
stmt.ExecuteNonQuery();
stmt = new SQLiteCommand("PRAGMA temp_store=MEMORY", cn);
stmt.ExecuteNonQuery();
}
私は私のUWPアプリでsqliteのを扱うためのSQLite.Net.Async-PCL nugetパッケージを使用していると私はInsertAllAsync方法が本当に高速であることが分かりました。ループを使用し、ちょうどInsertAsyncを呼び出したときに約10分かかっていた1秒未満で、テーブルに約33,000行を挿入することができました。
私はソースをチェックして、InsertAllメソッドのトランザクションを使用しています。これはすべて面倒です。あなたのアイテムのリストを渡すだけで、どんなフープでもジャンプする必要はありません。
- 1. 一括更新/ SQLデータベースへのデータの挿入
- 2. mysqlへの一括挿入(CSVファイル - Codeignitor)
- 3. 一括挿入クエリ
- 4. 一括挿入、asp.net
- 5. SSIS 2008の一括挿入
- 6. txtファイルの一括挿入
- 7. 基本pyodbc一括挿入
- 8. SQL一括挿入エラー4863
- 9. elasticsearch一括挿入JSONファイル
- 10. MySQLクエリ、一括挿入
- 11. ビルディングアクセサリスキーマと一括挿入
- 12. pymssql一括挿入エラー(パイソン)
- 13. MongoDB:一括挿入(Bulk.insert)vs複数挿入(挿入([...]))
- 14. データベースへの挿入
- 15. 配列からテーブルPLSQLへの一括挿入?
- 16. Zendを使用したDBへの一括挿入
- 17. Hibernateでのコンポーネントコレクションの一括挿入?
- 18. SQLiteとCoreDataの一括挿入
- 19. JavaでのSQLエスケープと一括挿入
- 20. Sqlの一括挿入方法
- 21. ファイルを一括挿入できない
- 22. XMLファイルからMYSQLに一括挿入
- 23. SQLBulkCopyまたは一括挿入
- 24. ファイル名パラメータ付き一括挿入
- 25. SQLAlchemy - 一括挿入無視: "重複エントリ"
- 26. SQL Server CEで一括挿入
- 27. 一括挿入に行が挿入されない
- 28. Postgresで一括更新(bulk upsert)した場合の一括挿入
- 29. いくつかの失敗を許すLINQからSQLへの一括挿入
- 30. データベースへの挿入の保存
似たような質問への回答はここ[so](http://stackoverflow.com/questions/364017/fest-bulk-inserts-in-sqlite3)を見てください。 – lexu