sqlite3 でデータエクスポート&インポート
sqlite3 で データのエクスポート&インポートしようとしたが、意外と情報が少なくて難渋した。そこでここにメモする。
情報ソース
SQLiteのドットコマンド
.help や .schema 等 "." ではじまるコマンドのリファレンス。
エクスポート
たとえばタブ区切りでテーブル foobar の内容をファイルに保存したい場合は次のようにする。
% sqlite3 mydb.sqlite3 SQLite version 3.3.8 Enter ".help" for instructions sqlite> .mode tabs foobar # 出力をタブ区切り表示に変更 sqlite> .output foobar.txt # 出力先を "foobar.txt" ファイルに変更 sqlite> select * from foobar; # データ出力
のように行う。
インポート
タブ区切りファイル foobar.txt からテーブル foobar にデータをインポートする。
sqlite> .mode tabs foobar # 出力をタブ区切り表示に変更すると、インポート時のファイルの解釈方法も変わるらしい。 sqlite> .import foobar.txt foobar # インポート。ファイル名・テーブル名の順に引数に指定。