这是命令行操作MySQL数据库系列博客的第四篇,今天这篇博客记录整型的用法。
整型有哪些?
MySQL中,整型一共有六种,具体信息请看下表:
整数类型 | 字节数 | 无符号数的取值范围 | 有符号数的取值范围 |
---|---|---|---|
TINYINT | 1 | 0 ~ 255 | -128 ~ 127 |
SMALLINT | 2 | 0 ~ 65535 | -32768 ~ 32767 |
MEDIUMINT | 3 | 0 ~ 16777215 | -8388608 ~ 8388607 |
INT | 4 | 0 ~ 4294967295 | -2147483648 ~ 2147483647 |
INTEGER | 4 | 0 ~ 4294967295 | -2147483648 ~ 2147483647 |
BIGINT | 8 | 0 ~ 18446744073709551615 | -9223372036854775808 ~ 9223372036854775807 |
根据上表,简单的创建一张数据表吧。
可以看到,id字段就是使用int类型修饰的。
整数类型的附带属性
(1)类型名称后面的小括号
指定显示宽度(并不是该类型占用字节数)。如果不显示指定宽度则默认为tinyint(3)、 smallint(5)、 mediumint(8)、 int(11) 和 bigint(20)。一般配合 zerofill 使用,顾名思义,zerofill 就是用“0”填充的意思,也就是在数字位数不够的空间用字符“0”填满。
例如:
(2)UNSIGNED(无符号)
如果需要在字段里面保存非负数或者需要较大的上限值时,可以用此选项,它的取值范围是正常值的下限取 0,上限取原值的 2 倍,例如,tinyint 有符号范围是-128~127,而无符号范围是 0~255。如果一个列指定为 zerofill,则 MySQL 自动为该列添加 UNSIGNED 属性。
例:
以下int类型属性均为(UNSIGNED)无符号整数。
MySQL关键字不区分大小写。
(3)AUTO_INCREMENT
在需要产生唯一标识符或顺序值时,可利用此属性,这个属性只用于整数类型。AUTO_INCREMENT 值一般从 1 开始,每行增加 1。 一个表中最多只能有一个 AUTO_INCREMENT列 。对于任何想要使用 AUTO_INCREMENT 的列,应该定义为 NOT NULL,并定义为 PRIMARY KEY 或定义为 UNIQUE 键。
例如,可按下列任何一种方式定义 AUTO_INCREMENT 列:
AUTO_INCREMENT 和 PRIMARY KEY 和 UNIQUE 都是列的完整性约束,后续会有博客专门记录。
AUTO_INCREMENT:每条插入数据该字段自增长一,且是唯一值。
PRIMARY KEY:修饰字段为主键,且是唯一值。
UNIQUE :修饰字段为唯一值。
可以给表class_int6插入数据做示范:
自增长可以在表名后面加括号写上除它以外的所有字段,系统会自动识别自增长插入该字段。
总结:
整型其实也就是跟其他语言的用法类似,都是用来存储整数的,这里这是需要注意整型可以有自增长(AUTO_INCREMENT)约束 和 主键(PRIMARY KEY) 约束 和 唯一键(UNIQUE)约束这三种。