问题:MySQL INT 含义

我想知道我是否采用值为 8 的 INT,这是否意味着我只能从 1 到 99999999 或从 1 到 4294967295 UNSIGNED ?

解答

文档似乎很清楚这一点:

数字类型属性

MySQL 支持扩展,用于在类型的基本关键字后面的括号中可选地指定整数数据类型的显示宽度。例如,INT(4) 指定显示宽度为四位的 INT。应用程序可以使用此可选显示宽度来显示宽度小于为列指定的宽度的整数值,方法是用空格向左填充它们。 (也就是说,这个宽度存在于与结果集一起返回的元数据中。是否使用它取决于应用程序。)

显示宽度不限制可以存储在列中的值的范围。它也不会阻止正确显示比列显示宽度更宽的值。例如,指定为 SMALLINT(3) 的列的 SMALLINT 范围通常为 -32768 到 32767,超出三位数允许范围的值将使用多于三位的完整显示。

http://dev.mysql.com/doc/refman/5.5/en/numeric-types.html

Logo

华为、百度、京东云现已入驻,来创建你的专属开发者社区吧!

更多推荐