2011-01-25 8 views
0

中国語の文字をmysqlに格納するには、UTF8またはUCS2として保存することをお勧めしますか? (私はcharとvarcharを使用しています)mysql chineseカラム

また、UTF8は値を格納するために4バイトのデータを使用しています。 UCS2はどのくらい使用しますか?

答えて

0

私は、UTF8が4バイトのデータを使用して値を格納していることを確認しました。 UCS2はどのくらい使用しますか?

UTF-8は1〜3バイトの可変長文字で構成され、UCS2(UTF-16)は1文字あたり2バイト固定です。

中国語の文字をmysqlに保存するには、UTF8またはUCS2として保存することをお勧めしますか?

私は漢字での経験がないが、このSO質問へのトップの答えは非常にうまく基本的な質問に答えます。そこからDifference between UTF-8 and UTF-16?

最も合理的な文字、ラテン語のように、キリル文字、中国語、日本語は2バイトで表現できます。本当にエキゾチックな文字が必要な場合を除き、これはUTF-16の16ビットサブセットを固定長エンコードとして使用できることを意味し、インデックス作成を高速化します。

中国語のように見えますが、UCS-2は記憶領域を節約する傾向があります。これがウェブプロジェクトの場合は、UTF-8を使用する傾向があります。なぜなら、UTF-8はより広範なエンコーディングであり、ウェブ世界の標準であるからです。ここではUTF-8のための追加の引数:Should UTF-16 be considered harmful?


MySQLのリファレンス:9.1.10. Unicode Support

+0

ありがとうペッカ、私はUTF8で行きますよ。乾杯、 – David19801