0

latin1 でエンコードされた mySQL データベースを使用する古いアプリケーションを変換しています。これを行うために、単純な rake タスクと、古いレガシー データベース (MySQL) に接続するためのいくつかのクラスを作成しました。

class LegacyComment < ActiveRecord::Base
    establish_connection :legacy
end

問題は、古い latin1 を utf8 に変換しようとしても、奇妙な文字が表示されることです。

"What he didn’t expect"

レガシーデータベースに複製テーブルを作成してから実行しようとしました

ALTER TABLE legacy_comments CONVERT TO CHARACTER SET utf8; 

ここで見つけた他の回答から Ruby の string.encode メソッドを使用してみました。http://jalada.co.uk/2011/12/07/solving-latin1-and-utf8-errors-for-good-in-ruby.htmlを試しても無駄でした。

database.yml のさまざまな設定を試してみましたが、すべてうまくいきませんでした。次に行く場所がわからない。

4

0 に答える 0