sqlite3.exeでデータベースのテーブルをSELECTした時にデフォルトではカラムが表示されません。
多くのカラムをSELECTした時にわかりにくいですね。
これを表示するには「.headers」コマンドを利用して「ON」に設定してやるとSELECT文の結果にカラム名をヘッダーとして表示することができます。
SELECT文の結果にカラム名をヘッダーとして表示
qlite3.exeでSELECT文の結果にカラム名をヘッダーとして表示するには「.headers」コマンドを利用します。
.headers [on|off]
sqlite> SELECT * FROM sqlite_master; table|test_tbl|test_tbl|2|CREATE TABLE test_tbl (col_1 TEXT,col_2 TEXT) sqlite> .headers on sqlite> SELECT * FROM sqlite_master; type|name|tbl_name|rootpage|sql table|test_tbl|test_tbl|2|CREATE TABLE test_tbl (col_1 TEXT,col_2 TEXT) sqlite> .headers off sqlite> SELECT * FROM sqlite_master; table|test_tbl|test_tbl|2|CREATE TABLE test_tbl (col_1 TEXT,col_2 TEXT)
※上記の例で言うと5行目がカラム名をヘッダーとして出力された結果です。
また現在の設定値を確認するには「.show」コマンドを利用することで確認できます。
.show
sqlite> .show echo: off eqp: off explain: auto headers: off mode: list nullvalue: "" output: stdout colseparator: "|" rowseparator: "n" stats: off width: filename: test.db sqlite>
ただし、一度「sqlite3.exe」を終了すると「.headers」は「off」に戻ってしまうようです。ちょっと不便。
まとめ
sqlite3.exeでSELECT文の結果にカラム名をヘッダーとして表示するには「.headers」コマンドを利用すると実現できます。
以上、sqlite3.exeでSELECT文の結果にカラム名をヘッダーとして表示する方法でした。