ユーザ用ツール

サイト用ツール


sqlite

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
sqlite [2022/02/12 01:15] – 作成 nullponsqlite [2022/07/31 11:32] (現在) nullpon
行 1: 行 1:
-====== SQLite ======+<markdown> 
 +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 <table_name> set <column_name> = replace(<column_name>, '\n', char(10)) where <condition>
 +```
 +
 +## エラー対応
 +
 +### エラーログに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
 +```
 +</markdown>
sqlite.1644628525.txt.gz · 最終更新: 2022/02/12 01:15 by nullpon