ホームページ  >  記事  >  データベース  >  MySQL VARCHAR カラムの最大長はどれくらいですか?

MySQL VARCHAR カラムの最大長はどれくらいですか?

王林
王林転載
2023-08-24 11:49:071171ブラウズ

MySQL VARCHAR 列的最大长度是多少?

#実際、VARCHAR データ型は、可変長文字データをシングルバイト文字とマルチバイト文字で格納します。このデータ型の構文は V​​ARCHAR(n) です。n はテーブルの作成時に指定する必要がある最大文字数です。 MySQL 5.03 より前では、n の値は 0 ~ 255 の範囲にすることができましたが、MySQL 5.03 以降では、値は 0 ~ 65,535 の範囲にすることができました。

VARCHAR に格納される最大文字数は、最大行サイズと使用される文字セットによって異なります。 ASCII 文字セットを使用する場合、ASCII は 1 文字あたり 1 バイトを使用するため、65,535 文字を保存できます。一方、utf8 文字セットを使用する場合、utf8 は 1 文字あたり 3 バイトを使用するため、文字制限は 21,844 になります。行サイズの最大制限は 65,535 バイトです。つまり、すべての列を含めた行サイズは 65,535 バイトを超えてはなりません。

mysql> Create Table var_test(FName Varchar(32765) NOT NULL, LName Varchar(32766)
       NOT NULL);
       Query OK, 0 rows affected (0.25 sec)

上記のクエリは、FName Varchar(32765) と LName Varchar(32766) の 2 つの列を持つテーブルを作成します。したがって、合計の長さは 32765 2 32766 2 = 65535 になります (長さを格納するために列ごとに 2 バイトを使用します)。

mysql> Create Table var_test1(FName varchar(32766) NOT NULL, LName Varchar(32766)
       NOT NULL);
       ERROR 1118 (42000): Row size too large. The maximum row size for the used
       table
       type, not counting BLOBs, is 65535. You have to change some columns to TEXT
       or BLOBs

現在、上記のクエリに示すように、長さが 1 バイト増加すると、MySQL はエラーを返します。

以上がMySQL VARCHAR カラムの最大長はどれくらいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。