sqlite
目次
SQLite
$ sqlite3 hoge.sqlite
hoge.sqlite
ファイルがなければ作成される
コマンド
CUIツールで . で始まる命令がコマンドとなる
終了
.quit .exit [EXIT_CODE]
exitは終了コードを返せる
設定の確認と変更
.show
select時のカラムの区切りをタブに変更(デフォルトは |
)
.separator \t
select時にカラム名を表示する
.headers on
テーブル一覧
.tables
スキーマ確認
.schema TABLE_NAME
バックアップ作成
.backup [DB_NAME] FILE_NAME
tips
改行コードについて
\n
は改行コードとして扱われない。\n
が入ってしまった場合は以下の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
sqlite.txt · 最終更新: 2022/07/31 11:32 by nullpon