ssCAROのブログ

色んなとこで見つけたプログラムのメモ置き場っぽい

SQLite3で大量のCSVを格納する

1日1ファイルで1分毎の収集データが3ヶ月分あり、それらをSQLiteに格納したかったから、insertを使ったけど遅くて遅くて...30分ほどかかった。

色々しらべたら次の方法を見つけた。

コマンドラインで次を入力するとすっごい速くCSVをテーブルに取り込めた。5秒ほど。
.importは、コマンドラインでしか出来ないので注意。あと、sqlite3.exeが必要です。
sqlite3 -separator , nippou.sqlite3 ".import total.csv TOTAL_DATA"

total.csv = カンマ区切りのCSVファイル(ヘッダーなし)
TOTAL_DATA = 格納先のテーブル名

3ヶ月分のファイルを1ファイルにするのはVBScripで書いて入力するのが面倒だったのでBATファイルにしてクリックで取り込むようにした。