多すぎるのでまとめページを作った。
分類
I/O
| ドットコマンド | 概要 |
|---|---|
| .backup, .clone, .save/ .restore |
今のDBを別名コピーする / 今のDBを指定DBファイルと同一にする |
| .open | DBファイルを開く(今開いているDBを閉じる) |
| .dump, .recover | DB内容をSQL文で出力する |
| .read (.mode, .separator) |
SQL文やドットコマンドが書かれたファイルを読み込んで実行する |
| .import (.mode, .separator) |
CSV,TSVのようなDSVファイルからテーブル作成&レコード挿入する |
| .output (.mode, .separator) |
select結果を指定したファイルに出力する |
| .session | insert,update,delete履歴を外部ファイル化。ただし取込方法不明 |
| .log | ログ出力制御 |
機能
| ドットコマンド | 概要 |
|---|---|
| .archive | SQLiteArchive圧縮形式ファイルの操作 |
| .parameter | パラメータ操作。SQL文内に変数を埋め込む |
| .testcase + .check | .selftest .testctrl |
テスト。出力の実測値と期待値が一致するか確認する テストの設定(詳細不明) |
SQL入出力形式設定
| ドットコマンド | 概要 |
|---|---|
| .headers | 列(カラム)を表示するか否か |
| .mode | 出力形式の設定 一部入力形式にもなる |
| .separator | 列と行のデリミタ |
| .nullvalue | NULLの出力形式 |
| .width | .mode column時の表示幅 |
| .binary | バイナリ出力の是非(ON/OFFの違い不明) |
シェル
| ドットコマンド | 概要 |
|---|---|
| .cd | カレントディレクトリ設定 |
| .echo | 実行したSQL文を出力するか否か |
| .exit | 終了する。終了コードを設定可 |
| 標準出力する | |
| .prompt | 対話モード時のsqlite>や...>を変更する |
| .quit | 終了する |
| .shell, .system | 指定したシェルコマンドを実行する |
| .timeout | ロック時のタイムアウト時間を設定 |
| .timer | 対話モード時、SQL文実行時間を出力 |
外部アプリ連携
| ドットコマンド | 概要 |
|---|---|
| .excel | 表計算アプリを起動する。次の文の実行結果を渡す。 |
| .once | 次の実行結果を指定した出力先へ渡す。 出力先は次のいずれか(テキストエディタ、表計算アプリ、ファイル、パイプコマンド) |
メタデータ表示
メタデータ表示(sqlite3バイナリ)
| ドットコマンド | 概要 |
|---|---|
| .help | ヘルプ |
| .sha3sum | DBファイルのハッシュ値算出。 |
| .stats | DBSTAT仮想テーブルの有効化 |
メタデータ表示(DBファイル)
| ドットコマンド | 概要 |
|---|---|
| .dbconfig | 外部キーを有効化したりできる |
| .dbinfo | DB情報の表示 |
| .indexes | インデックス名一覧 |
| .limit | 制限とその設定。 |
| .lint | 潜在的なスキーマの問題を報告する |
| .show | 設定の表示。ヘッダのON/OFF設定など。 |
| .vfsinfo | 仮想ファイルシステムの情報を表示する |
| .vfslist | 仮想ファイルシステム一覧 |
| .vfsname | VFSスタックの名前を出力する。(意味不明) |
メタデータ表示(SQL)
| ドットコマンド | 概要 |
|---|---|
| .databases | attachで接続中のDBを一覧する |
| .fullschema | create文出力。.schemaとの違い不明 |
| .schema | create文を出力する |
| .tables | テーブル名一覧 |
メタデータ表示(SQL実行時)
| ドットコマンド | 概要 |
|---|---|
| .changes | 直前のSQLで変更された行数を表示する |
| .trace | 実行したSQL文を出力する .echoの詳細版? |
パフォーマンス確認
| ドットコマンド | 概要 |
|---|---|
| .eqp | クエリプラン機能の有効化 |
| .expert | インデックスを提案してくれる |
| .imposter | 分析とデバッグのみを目的としたテーブルを作成するコマンド |
| .scanstats | パフォーマンス情報の取得。コンパイルオプション必須。 |
(不明)
| ドットコマンド | 概要 |
|---|---|
| .auth | 認証。ググってみたが情報もなく難しそうで効果も低そうなので諦める。 |
| .bail | 何の役に立つのかわからなかった |
| .filectrl | データベースファイルの低レベル制御 |
| .progress | 不明 |
一覧
- .archive
- .auth
- .backup .restore
- .read
- .dump
- .bail
- .binary
- .cd
- .changes
- .testcase .check
- .clone
- .databases
- .dbconfig
- .dbinfo
- .echo
- .eqp
- .excel
- .exit
- .expert
- .filectrl
- .fullschema
- .headers
- .help
- .import
- .imposter
- .indexes
- .limit
- .lint
- .load
- .log
- .mode
- .nullvalue
- .once
- .open
- .output
- .parameter
- .progress
- .prompt
- .quit
- .read
- .read
- .recover
- .save
- .scanstats
- .schema
- .selftest
- .separator
- .session
- .sha3sum
- .shell
- .show
- .stats
- .tables
- .testctrl
- .timeout
- .timer
- .trace
- .vfsinfo
- .vfsnlist
- .vfsname
対象環境
- Raspbierry pi 3 Model B+
- Raspbian stretch 9.0 2018-11-13
- bash 4.4.12(1)-release
- SQLite 3.29.0
- MeCab 0.996ユーザ辞書
$ uname -a Linux raspberrypi 4.19.42-v7+ #1218 SMP Tue May 14 00:48:17 BST 2019 armv7l GNU/Linux
前回まで
- SQLite3学習をはじめよう
- SQLite3学習 SQLiteについて
- SQLite3学習 SQLiteの適切な用途
- SQLite3学習 SQLiteの特徴
- SQLite3学習 SQLiteのクセ
- SQLite3学習 データ型とアフィニティ
- SQLite3学習 演算子の一覧
- SQLite3学習 よくある質問
- SQLite3学習 SQLiteダウンロード&コンパイル
- SQLite3学習 Tclで操作する
- SQLite3学習 ビルドオプション動作確認(SQLITE_ALLOW_URI_AUTHORITY)
- SQLite3学習 面白そうなコンパイルオプション
- SQLite3学習 SQLiteの拡張について
- SQLite3学習 JSON拡張
- SQLite3学習 JSON拡張(json_extract)
- SQLite3学習 JSON拡張(json_each)
- SQLite3学習 JSON拡張(json_tree オブジェクト→行)
- SQLite3学習 JSON拡張(json_tree オブジェクトツリー→行)
- SQLite3学習 JSON拡張(json_tree オブジェクト配列→行)
- SQLite3学習 JSON拡張(json_group_array 行→配列)
- SQLite3学習 JSON拡張(json_group_object 行→オブジェクト)
- SQLite3学習 JSON拡張(json_array_length)
- SQLite3学習 JSON拡張(json_type)
- SQLite3学習 JSON拡張(json_valid)
- SQLite3学習 JSON拡張(json_quote)
- SQLite3学習 JSON拡張(json_array)
- SQLite3学習 JSON拡張(json_object)
- SQLite3学習 JSON拡張(json_patch)
- SQLite3学習 JSON拡張(json_insert)
- SQLite3学習 JSON拡張(json_replace)
- SQLite3学習 JSON拡張(json_set)
- SQLite3学習 JSON拡張(json_remove)
- SQLite3学習 全文検索(FTS5)
- SQLite3学習 全文検索FTSを日本語で使う方法を調べてみた
- 形態素解析MeCabをインストールする
- SQLite3学習 全文検索FTS5のMeCab用トークナイザを実装する
- SQLite3学習 FTS5+MeCabでクエリ構文
- SQLite3学習 FTS5のテーブル作成と初期化
- SQLite3学習 FTS5の補助関数
- SQLite3学習 FTS5のfts5vocab仮想テーブル
- SQLite3学習 再帰クエリ(WITH RECURSIVE)
- SQLite3学習 R-Treeモジュール
- SQLite3学習 ファイル入出力(SQL集計)
- SQLite3学習 拡張関数(generate_series)
- SQLite3謎 主キーの型をintにするとinsertで値を省略したらNULLになってしまう
- SQLite3学習 入出力関数(fsdir, readfile, writefile, edit)
- SQLite3ビルド コンパイルオプションを付与する方法(CFLAGS等))
- SQLite3 コンパイルオプション確認方法(pragma compile_options)
- SQLite3ビルド ICUを有効にする(SQLITE_ENABLE_ICU)
- SQLite3拡張 ICUを動的ロードする
- SQLite3拡張 ICUでcollateする
- SQLite3拡張 ICUで全文検索する(FTS4)
- SQLite3拡張 SQL関数一覧(pragma function_list)
- SQLite3拡張 仮想テーブルモジュール一覧(pragma module_list)
- SQLite3拡張 プラグマ一覧(pragma pragma_list)
- SQLite3謎 values()構文
- SQLite3学習 インタフェース概要
- SQLite3学習 CLI起動引数(-A)Archive
- SQLite3ビルド SQLITE_HAVE_ZLIBコンパイルオプション付与するも確認できず
- SQLite3学習 CLI(-readonly)
- MeCabユーザ辞書の作り方(Wikipediaの題名を名詞とした)
- SQLite3学習 CLI(-zip)