SQLite3を使う時に、よく使うコマンドのメモ書きです。
SQLite3自体を時間を空けて使おうとすると忘れてしまうので、、
SQLite3のバージョン確認
$ sqlite3 --version
SQLite version 3.27.0 〜
Enter ".help" for usage hints.
sqlite>
SQLite3のDBファイルにアクセスする
これで、sqlite3のプロンプトに入る事ができ、指定したSQLiteのDB(データベース)にSQLを実行できるようになる。
$ sqlite3 testdb.sqlite3
SQLite version 3.27.0 〜
Enter ".help" for usage hints.
sqlite>
SQLite3プロンプトの終了
.exitだけでなく、ショートカット「Ctrl + D」でもできる。
sqlite> .exit
DBにあるテーブル一覧を確認する
sqlite> .table
テーブルのスキーマを確認する
sqlite> .schema hogetable
CREATE TABLE hogetable(
id integer primary key autoincrement,
name text not null,
content text not null,
created_at text not null default (datetime('now', 'localtime'))
);
設定を確認する
ヘッダーやモードの設定を確認できる。
sqlite> .show
echo: off
eqp: off
explain: auto
headers: off
mode: list
nullvalue: ""
output: stdout
colseparator: "|"
rowseparator: "\n"
stats: off
width:
filename: testdb.sqlite3
ヘッダーを表示する
select SQL実行時に、結果のヘッダーに列名(カラム)を表示するようになる。
sqlite> .header on
モード設定をlineに変更する
デフォルトのモードのlistだと、select SQL実行時の結果表示が非常に見にくいので、モードをlineに変更する。
(モードは他にもcolumn、htmlなどがある。)
sqlite> .mode line
ヘルプでSQLite3のコマンド一覧を確認する。
sqlite> .help
DBのSQLダンプを取る
DBのバックアップを取得したい場合で、SQLダンプを取得したい時についてです。
まず、hogetableテーブルのSQLダンプを取得する。
sqlite> .dump hogetable
〜
次に、DB全体のSQLダンプを取得する。
sqlite> .dump
〜
次に、SQLダンプをファイル保存したい場合です。
hogetableテーブルのSQLダンプをdump.sqlファイルに保存します。
sqlite> .output dump.sql
sqlite> .dump hogetable
外部のSQLファイルを読み込んで実行する
取得したSQLのダンプファイルなどを読み込んで実行したい場合についてです。
duml.sqlというファイル(中身はSQL)を読み込んで実行する。
sqlite> .read dump.sql