sqlite
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| sqlite [2022/02/12 01:15] – 作成 nullpon | sqlite [2022/07/31 11:32] (現在) – nullpon | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | ====== | + | < |
| + | # SQLite | ||
| ``` | ``` | ||
| 行 8: | 行 9: | ||
| - | ===== コマンド | + | ## コマンド |
| CUIツールで . で始まる命令がコマンドとなる | CUIツールで . で始まる命令がコマンドとなる | ||
| - | ==== 終了 | + | ### 終了 |
| ``` | ``` | ||
| 行 21: | 行 22: | ||
| exitは終了コードを返せる | exitは終了コードを返せる | ||
| - | ==== 設定の確認と変更 | + | ### 設定の確認と変更 |
| ``` | ``` | ||
| 行 27: | 行 28: | ||
| ``` | ``` | ||
| - | セパレータをタブ区切りに変更 | + | select時のカラムの区切りをタブに変更(デフォルトは `|`) |
| ``` | ``` | ||
| 行 39: | 行 40: | ||
| ``` | ``` | ||
| - | ==== スキーマ | + | ### テーブル一覧 |
| + | |||
| + | ``` | ||
| + | .tables | ||
| + | ``` | ||
| + | |||
| + | ### スキーマ確認 | ||
| ``` | ``` | ||
| 行 45: | 行 52: | ||
| ``` | ``` | ||
| - | ==== バックアップ作成 | + | ### バックアップ作成 |
| ``` | ``` | ||
| 行 52: | 行 59: | ||
| + | ## tips | ||
| + | |||
| + | ### 改行コードについて | ||
| + | |||
| + | `\n` は改行コードとして扱われない。`\n` が入ってしまった場合は以下のSQLで修正 | ||
| + | |||
| + | ```sql | ||
| + | update < | ||
| + | ``` | ||
| + | |||
| + | ## エラー対応 | ||
| + | |||
| + | ### エラーログにdatabase disk image is malformedと出た | ||
| + | |||
| + | コマンドラインでSQLiteに入り、以下を実行 | ||
| + | |||
| + | ``` | ||
| + | sqlite> pragma integrity_check; | ||
| + | Page 538 is never used | ||
| + | row 125 missing from index hoge; | ||
| + | ``` | ||
| + | |||
| + | `missing from index`に対してはreindexする | ||
| + | |||
| + | |||
| + | ``` | ||
| + | sqlite> reindex; | ||
| + | ``` | ||
| + | |||
| + | `page never used`に対してはvacuumする | ||
| + | |||
| + | ``` | ||
| + | sqlite> vacuum; | ||
| + | ``` | ||
| + | |||
| + | 再度integrity_checkしてokと出たら修復完了 | ||
| + | |||
| + | ``` | ||
| + | sqlite> pragma integrity_check; | ||
| + | ok | ||
| + | ``` | ||
| + | </ | ||
sqlite.1644628525.txt.gz · 最終更新: by nullpon