カテゴリー
ソフトウェア

SQLite からデータをエクスポートする

はじめに

SQLite はちょっとしたツールのデータを格納するのに手軽に使えるデータベースです。Mac やほとんどの Linux 系 OS では標準でインストールされているのも魅力です。

今回は、SQLite に格納したデータのダンプを取得する方法を紹介します。出力される SQL を他のデータベースサーバーに移行したり、分散していたホストのデータを1つにまとめるために実施したりと何かと必要になってくる操作かと思います。

SQLite にあるテーブルの一覧を取得する

$ sqlite3 mydb.sqlite

sqlite> .table

SQLite のダンプを取得する

sqlite のデータを SQL 文としてエクスポートします。

$ sqlite3 mydb.sqlite

sqlite> .output ./mydb-dump.sql
sqlite> .dump
sqlite> .output stdout
sqlite> [Ctrl + d]

テーブル毎に取得する場合はテーブルを指定します。

$ sqlite3 mydb.sqlite

sqlite> .output ./mydb-mytable-dump.sql
sqlite> .dump mytable
sqlite> .output stdout
sqlite> [Ctrl + d]

エクスポートされる SQL ファイルの先頭にはテーブル定義も出力されます。また、データ部分の先頭と末尾にはインポートにかかる時間を短縮するため、COMMIT は最後に 1 回だけ実行されるよう「BEGIN TRANSACTION;」と「COMMIT;」がそれぞれ追加されます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください