読者です 読者をやめる 読者になる 読者になる

Sqlite3で日本語入力する(Mac,Terminal)

Sqlite3

Sqlite3で日本語入力しようとすると、入力キャンセルされてしまうというか、日本語を入力した瞬間エラー音とともに文字が消えてしまう。

Sqlite3を直に触る機会が少なくて、使う度に日本語入力の方法をググっているのでメモ。

  • Terminal > 環境設定 > 詳細タブ

f:id:star__hoshi:20140607204021p:plain

にある、

  • Control + V で非 ASCII 入力をエスケープ

をチェックすればOK。入力してみる。

// "オボンのみ" を検索したい。
sqlite> select * from item where item = "\U+00E3\U+0082\U+00AA\U+00E3\U+0083\U+009C\U+00E3\U+0083\U+00B3\U+00E3\U+0081\U+00AE\U+00E3\U+0081\U+00BF";
554|オボンのみ

// タラプのみをinsertしたい。
sqlite> insert into item values(620,"\U+00E3\U+0082\U+00BF\U+00E3\U+0083\U+00A9\U+00E3\U+0083\U+0097\U+00E3\U+0081\U+00AE\U+00E3\U+0081\U+00BF");

日本語を入力した瞬間にエスケープされてしまうけど、検索結果は返ってきてるので、いけてるっぽい。
Sqlite3をいじる時はこれでよさそう。

けど文字コード?がおかしくなってしまってる。 文字エンコーディングUnicode (UTF-8)になってるからUTF-8かと思ったら違うみたいだし、
Unicodeっぽいけど違うし、いろいろ調べたらASCII-8bit?とかいうの出てきたけどよくわからない…。

だれか分かる人いたらおしえてください!!!