SQLite の DB の文字コードを変換する(EUC-JP → UTF-8)

| コメント(0) | トラックバック(0)
このエントリーを含むはてなブックマークこのエントリーのはてなブックマーク数 Buzzurlへ追加このエントリーのBuzzurlブックマーク数 livedoorクリップへ追加このエントリーのlivedoorクリップ数 Yahoo!ブックマークへ追加人が登録 POOKMARK Airlinesへ追加 Saafへ追加 ニフティクリップへ追加 add to del.icio.us add to Digg add to Reddit

当ブログの文字コードはずっと EUC-JP でした。

さかのぼること数年、このブログを始める際、確か Movable Type のバージョンは 2.5x。日本語版というものは存在せず、日本語化するには Movable Type Japanese Language Pack [dh memoranda] が必要。そしてその為には文字コードを UTF-8 か EUC-JP にする必要がありました。当初 Shift_JIS でブログを開始した僕は、エントリーが数件だったのを良いことに、文字コードを変更することを決意。当時まだ世間一般では馴染みの無かった UTF-8 ではなく、 EUC-JP を選択したのでした。思えば、あれがはじめての Import/Export、エントリー ID が振り直される為、permalink が変更になってしまうケースがあることもこの時知りました。

とまぁ、そんな感じでずっとお付き合いしてきた EUC-JP ですが、UTF-8 が市民権を勝ち得てずいぶんと経ちましたし、携帯電話も最新機種では当たり前のように UTF-8 に対応しているようだし、 Perl も普通に UTF-8 を扱うし、そろそろ UTF-8 に文字コード変更するべきかなと思っていました。ただ、SQLite 上の文字コードをどうやってコンバートすれば良いのか調べるのも億劫だし、トライ&エラー繰り返す暇もないし、面倒で放置し続けてきました。

が、たまたま MT4 関連のブログ記事を漁っていたところ、ドンピシャの記事を発見したわけです。

と、以上長々と前置きでした。

見つけたのは以下の記事。

sqliteのdbの文字コードを変換する (Yusukebe::Tech)より。

ということでsqliteのdbファイル内データの文字コードを変換するのは以下でいけます。

はい、ということで MT ホーム/db ディレクトリに移動して、下記を実行。

$ echo '.dump' | sqlite3 mt.db | nkf -w > dump.txt
$ sqlite3 mt_utf8.db < dump.txt

すると、

SQL error near line 76: unrecognized token: "25・blog・ ・ 鏆"
≦с?? 荅宴・

なんてなエラーが出ましたが、気にしないことに。どっか文字化けとかしてるかもしれませんけど、とりあえず動くようなのでいいやと。であとは、mt-config.cgi を編集です。

- Database db/mt.db
+ Database db/mt_utf8.db

- PublishCharset euc-jp
+ PublishCharset utf8

上記変更して保存したら、ブログをフルリビルド(全再構築)して完了。

文字コード指定して貼り付けているような JavaScript Include が文字化けしていたので、そのあたりも一通り変更しました。

さて、これでいつでも MT4 に移行できますよ。いつになることやらですけど。


SQLite入門 すぐに使える軽快・軽量データベース・エンジン
4798109436
西沢 直木


Amazonで詳しく見る
by G-Tools

トラックバック(0)

トラックバックURL: http://www.hazama.nu/mt/mt-tb-fKzu6DDj.cgi/2684

コメントする

ウェブページ

OpenID対応しています OpenIDについて

AD

 

被はてブ

Flickriver::Most Interesting

tai-tetsu - Flickriver

最近のコメント

アイテム

  • 20100107_five_finger_sox_01.jpeg
  • 20100107_five_finger_sox_01.jpeg
  • 2010年賀状
  • 20091231_digital_camera_magazine_02
  • 20091231_digital_camera_magazine_01
  • 20091223_animal_shougi_02.jpeg
  • 20091223_animal_shougi_01.jpeg
  • 20091108_drybox_03.jpeg
  • 20091108_drybox_02.jpeg
  • 20091108_drybox_01.jpeg

このブログ記事について

このページは、太鉄が2007年8月31日 01:12に書いたブログ記事です。

ひとつ前のブログ記事は「MT4i version 2.23(BugFix)をリリースしました」です。

次のブログ記事は「MT4i version 2.24(BugFix2)をリリースしました」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。