11

MySQL テーブルを作成するときに、多くの開発者が varchar を 255 ではなく 254 に設定するのはなぜですか?

これが発生したことの証明: mysql varchar 254

4

2 に答える 2

13

あなたの Google クエリはすでにヒントを与えています。最初のヒットの1つはこれです:

https://www.vbulletin.com/forum/project.php?issueid=32655

基本的には、FULLTEXT上のインデックスはFULLTEXT インデックスVARCHAR(255)の 2 倍のスペースを必要とするということです。VARCHAR(254)そして、その上にさらにいくつかの膨らみがあります。

これは、データ テーブルに 1 バイトを保存するよりもはるかに重要だと思います。

于 2012-04-06T13:05:29.253 に答える
6

varchar フィールドでは、255 以下のフィールドには n+1 バイトが必要であり、255 を超えるフィールドには n+2 バイトが必要です。

http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html

255 に設定する必要があります。開発者は 254 から 1 バイト余分に節約できると考えていると思いますが、255 が標準です。

于 2012-04-06T12:47:53.467 に答える