TOP ▲ itcore TOPTIPSvarchar.php  タグ:mysql varchar

MySQL 可変長フィールドを全てvarchar(255)にしたら何か問題があるか。| itcore 2017年

消費するディスク容量はvarchar(10)などと変わらない。
1つのテーブルに作成できるフィールド(カラム)数が少なくなる。
バッファサイズが大きくなってキャッシュヒット率が下がる。

MySQL 5.6 リファレンスマニュアル テーブルカラム数と行サイズの制限
D.10.4 テーブルカラム数と行サイズの制限

テーブルあたり最大 4096 カラム(任意の型)
テーブル の最大行サイズは 65,535 バイト
utf8 文字では、文字あたり最大 3 バイト
varchar(255)では 255 × 3 = 765 バイト
テーブルに含められるvarchar(255)のカラム数 65,535 / 765 = 85 カラム