mysql中int和integer区别为:类型不同、默认值不同、存储不同。
一、类型不同
1、int:在mysql中,int的数据类型是基本数据类型,是对integer的拆箱。
2、integer:在mysql中,integer的数据类型是引用数据类型,是对int的装箱。
二、默认值不同
1、int:在设置字段类型为int类型时,字段的默认值是0。
2、integer:在设置字段类型为integer类型时,字段的默认值是null。
三、存储不同
1、int:int是作为对象,直接存储数值。
2、integer:integer需要实例化对象,实际上是生成一个指针指向对象的地址。
同意 henuzhao的意见。
没有区别
· INT[(M)] [UNSIGNED] [ZEROFILL]
普通大小的整数。带符号的范围是-2147483648到2147483647。无符号的范围是0到4294967295。
· INTEGER[(M)] [UNSIGNED] [ZEROFILL]
这是INT的同义词。
以上参考自mysql手册 5.1版本 章节 11.1.1
关于
“如果没有什么区别,那么MySQL为什么有它们俩个哪?”
的问题,打个比方
windows命令行下有mkdir md 都是创建一个文件夹。 而且完全相同。
linux下 list 相当于dos的dir
可是大部分发行版都可以简写成ls
Freebsd中可以简写成l
感觉纯粹是为方便
我今天碰到了个问题 我mysql的数据库中的int类型为null,但是int类型在java中不能赋值为null,
所以要用intger,就像分数如果是缺考就给个null,你用int就会出问题
mysql中用int就行了,没见过用Integer的-
没什么区别,int是integer的缩写