Rumah  >  Artikel  >  pangkalan data  >  数据类型:int

数据类型:int

黄舟
黄舟asal
2017-02-07 11:35:501983semak imbas

整数类型:int

INT[(M)] [UNSIGNED] [ZEROFILL]

M表示显示最大宽度,最大为255,个人认为无意义当M定义值为1时,也可以存储到10位数据[或许这里的只是对前端的应用显示吧?]

大小:4个字节

存储范围:

single(-2^(32-1),2^(32-1)-1]、unsingle(0,2^32-1)


1.MySQL以一个可选的显示宽度指示器的形式对SQL标准进行扩展,这样当从数据库检索一个值时,可以把这个值加长到指定的长度。例如,指定一个字段的类型为int(6),既可以保证所包含数字少于6个的值从数据库中检索出来时能够自动地用空格填充,需要注意的是,使用一个宽度指示器,不会影响字段的大小和它的存储值的范围。

2.当超出许可范围的数字,会截短后存储。还有一个比较特别的地方是,mysql会在不合规定的值插入表前自动修改为0。

3.ZEROFILL修饰规定0(不是空格)可以用来填补输出的值。使用这个修饰符可以阻止MySQL数据库存储负值。

mysql>create table t1(id int,id2int unsigned);
Query OK, 0 rows affected (0.13 sec)

932.jpg


总结:

创建表int类型默认为signed,默认为11,unsigned默认为10.

int(M) 在 integer 数据类型中,M 表示最大显示宽度。

在 int(M) 中,M 的值跟 int(M) 所占多少存储空间并无任何关系。

和数字位数也无关系 int(3)、int(4)、int(8) 在磁盘上都是占用 4 btyes 的存储空间。

M最大值为255,因为int无符号数,最大值为4294967295,宽度为10位,所以定义int(255)是没有意义的。所以定义宽度没有意思。

无符号数默认为10,有符号数默认为11,因为一个 -号,符号位。

以上就是数据类型:int的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn