Mysql中整数的255限制是什么意思?

时间:2011-08-16 02:53:24

标签: mysql sql

问题告诉我,如果我想拥有256个数字怎么办?这是一个数字还是字节?因为,我肯定需要超过255

4 个答案:

答案 0 :(得分:6)

255限制适用于具有字节类型的字段,在MySql中称为TinyInt。由于可以在单个字节中表示的最大值为255。

默认情况下,MySql中的整数和大多数DBMS将远大于单个字节,在MySql中,它是32位,或4个字节长。这意味着它可以存储0到40亿,或从-2亿到+20亿的值。

整数大小的官方MySql参考是http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

答案 1 :(得分:0)

http://dev.mysql.com/doc/refman/5.5/en/numeric-types.html “255”是无符号tinyint的限制。

答案 2 :(得分:0)

你指的是255个限制?

这个page on MySQL numeric datatypes清楚地详细说明了可用范围 - SMALLINT可以保持在-32768和32767之间,INTEGER可以保存32位有符号整数值等。

答案 3 :(得分:0)

任何INT / BIGINT / MEDIUMINT / SMALLINT / TINYINT的参数与其大小限制或其值范围无关。这只是显示宽度的提示。

如果对整数类型使用ZEROFILL选项,则此选项更有用。所以它用零填充值。例如,将1234存储到INT(10)ZEROFILL列并将其取回返回"0000001234"。这使得一些报告看起来更好。但是存储在数据库中的值只有1234。

显示宽度编号不会使TINYINT存储更多或少于8位,无论宽度有多大。同样,SMALLINT始终为16位,MEDIUMINT始终为24位,INT始终为32位,BIGINT始终为64位。

显示宽度也不会限制任何这些类型存储小于其数据类型大小允许的全部值。例如。 TINYINT(1)仍允许所有值-128到127。


NUMERIC或DECIMAL的数字参数具有完全不同的含义。根据标准SQL,它们确实确定数据类型的精度和规模。