在MySQL数据库中存储端口号的最佳方法是什么?

Wil*_*ill 6 mysql int

如果我想在MySQL中存储端口号,那么最有效的方法是什么(最大限度地减少浪费的空间)呢?难道INT(5)还是INT(3)

我在这里看,我认为答案是INT(3)(或许MEDIUMINT).

Ike*_*ker 6

如果要尽可能紧凑地存储值,则选择SMALLINT UNSIGNED需要2个字节的存储空间.

有关详细信息,请参阅手册

另外,FYI INT(5)INT(3)两者都使用4个字节的存储空间.的(5)(3)仅用于显示,不进行存储.


Ale*_*ogt 5

端口号是一个不单数的16位整数。这意味着最大值可以是65535。因此您可以使用SMALLINT。

  • 这必须是一个未签名的SMALLINT,对吗? (2认同)
  • 是的,它必须是UNSIGNED SMALLINT。存储空间将是相同的,但您只能使用-32768到32767之间的范围... (2认同)