2012-02-29 10 views
1

データベースのエクスポート中にファイルエンコーディングに問題が発生しました。データベースのエクスポートデータベースのエクスポート中にエンコーディングが失われる

は、Unicode文字を保存しない、簡単に言えば

。 個々のテーブルのエクスポートは、Unicode文字を保持します。

データベース全体としてエクスポートするときに出力されるdump sqlファイルでも、デフォルトのcharsetが以下のようにutf8に設定されています。

はTABLE content_field_tamilをCREATE(vid int型(10)符号なしNOT NULLデフォルトは '0'、nid INT(10)符号なしNOT NULLデフォルト '0'、field_tamil_value LONGTEXT、field_tamil_format INT(10)符号なしのデフォルトのNULL、PRIMARY KEY(vid )、KEY nidnid))ENGINE = MyISAM DEFAULT CHARSET = utf8;

「field_tamil_value」フィールドの

サンプルフィールド値:

‡AEA‡Æ±‡OC‡Æ±‡AEAE‡Æ∞ - これは私が.sqlファイルで、データベース全体としてそれをエクスポートするときに私が得るものです。これは間違ってエンコードされています。 உற்றார் - これは、個々のテーブルをエクスポートするときに得られるものです。そしてこれは正しい。

データベース全体としてエクスポートすると、なぜエンコードが違うのか分かりません。そして、私のlocalhostテストデータベースでも同じことをします。どんな助けでも本当に感謝しています。

+0

私は完全な答えを与えるために十分な詳細にMySQLのことは知らないが、私はあなたのデータ型を指定するときに 'CHARACTERのSET'および/または' COLLATE'の使用を検討することをお勧めしたいです。 – MatBailie

答えて

1

これを試したことがありますか?データベースの文字セットは、がutf8に設定されていますか?例えば。テーブルだけではありません。

CREATE DATABASE db_name 
    [[DEFAULT] CHARACTER SET charset_name] 
    [[DEFAULT] COLLATE collation_name] 

ALTER DATABASE db_name 
    [[DEFAULT] CHARACTER SET charset_name] 
    [[DEFAULT] COLLATE collation_name] 
関連する問題