ホームページ  >  記事  >  データベース  >  MySQL 4 と 5 の間で VARCHAR の長さはどのように変わりますか?

MySQL 4 と 5 の間で VARCHAR の長さはどのように変わりますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-22 08:57:10471ブラウズ

How Do VARCHAR Lengths Change Between MySQL 4 and 5 ?

MySQL VARCHAR 長さ: バイトと文字の混同をナビゲートする

MySQL 内では、VARCHAR(n) カラムの長さの解釈は、データベースのバージョンについて。 4.1 より前のバージョンでは、列の長さはバイト単位で定義されていました。ただし、MySQL 5 以降では、長さは文字単位で解釈されます。

バイト数: MySQL バージョン 4

MySQL バージョン 4 では、VARCHAR(32) カラム32 バイトのデータを収容できます。したがって、このフィールド内にマルチバイト文字を格納するには、特定の文字エンコーディングに依存し、1 文字あたりより多くのバイト数が必要になる可能性があります。

文字数: MySQL バージョン 5 以降

MySQL バージョン 4 以降では、カラムの長さは文字数によって決まります。 UTF-8 の VARCHAR(32) 列では 32 文字を使用できます。この場合でもマルチバイト UTF-8 文字は複数バイトを占有しますが、列の長さの計算ではバイトではなく文字数が考慮されます。

MySQL ドキュメントの確認

さらに明確にするために、MySQL 5 の公式ドキュメントには次のように記載されています。「MySQL は文字列定義の長さの指定を文字単位で解釈します...これは CHAR に適用されます。 「

UTF-8 による VARCHAR の最大長への影響

興味深いことに、VARCHAR 列の最大長も文字セットの影響を受けます」 。たとえば、MySQL 5.0.3 以降では、utf8 文字は 1 文字あたり最大 3 バイトを必要とする場合があります。したがって、UTF-8 を使用する VARCHAR 列は、宣言された最大長を 21,844 文字 (65,535 バイト / 1 文字あたり 3 バイト) にすることができます。

以上がMySQL 4 と 5 の間で VARCHAR の長さはどのように変わりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。