プライベート メッセージを送信するためのフォームを作成しており、 MySQL データベース テーブル内のフィールドmaxlength
の最大長に適したテキスト領域の値を設定したいと考えていますtext
。テキスト フィールドには、何文字を保存できますか?
多い場合、varchar の場合と同様に、データベースのテキスト型フィールドで長さを指定できますか?
ベストアンサー1
最大数については以下を参照してください:http://dev.mysql.com/doc/refman/5.0/en/ストレージ要件.html
TINYBLOB, TINYTEXT L + 1 bytes, where L < 2^8 (255 Bytes)
BLOB, TEXT L + 2 bytes, where L < 2^16 (64 Kilobytes)
MEDIUMBLOB, MEDIUMTEXT L + 3 bytes, where L < 2^24 (16 Megabytes)
LONGBLOB, LONGTEXT L + 4 bytes, where L < 2^32 (4 Gigabytes)
L はテキスト フィールドのバイト数です。したがって、テキストの最大文字数は 2 16 -1 (シングル バイト文字を使用) です。つまり、65,535 文字 (シングル バイト文字を使用) になります。
UTF-8/マルチバイト エンコーディング: マルチバイト エンコーディングを使用すると、各文字が 1 バイトを超えるスペースを消費する可能性があります。UTF-8 の場合、スペースの消費量は 1 文字あたり 1 ~ 4 バイトです。