2017/03/27 [長年日記]
条件:
- サーバに対して TeraTermPro でログインする。表示漢字コードは euc-jp。
- dbファイルは sqlite3 で作成されたものを使用する。漢字コードは utf-8で作成されている。
目的:この条件で出来上がっているファイルの中身を見てみたい。
- シェルから、dbファイルへ接続
% sqlite3 <dbファイル名>
- どんなテーブルが有るのか。テーブル一覧を確認
sqlite> .tables
- テーブルの定義を確認しておく
sqlite> .schema <テーブル名>
- 文字列の部分一致で検索させてみる。たくさんあると大変なので、マッチしても10件だけに限定する。
sqlite> SELECT * FROM <テーブル名> WHERE <キー名> like "%部分一致文字列%" LIMIT 10;
sqlite3 の保存コードと、ターミナルの表示コードが異なるので、sqlite3側で何とかできないかと 思ってググってみたけど、どうやら出来ないみたい。
仕方がないので、sqlite3 のコマンドラインから操作して内容を確認するのではなく、 シェルから sqlite3 を起動する際に SQL文を指定して内容を表示させ、 その出力をパイプに食わせて文字コード変換することにした。
% sqlite3 <dbファイル名> 'SQL文' | less など