[MySQL] 整数类型简述
取值范围
有符号最小值 |
有符号最大值 |
|
| TINYINT | -128 | 127 |
| SMALLINT | -32768 | 32767 |
| MEDIUMINT | -8388608 | 8388607 |
| INT | -2147483648 | 2147483647 |
| BIGINT | -263 | 263-1 |
| 无符号最小值 | 无符号最大值 | |
| TINYINT | 0 | 255 |
| SMALLINT | 0 | 65535 |
| MEDIUMINT | 0 | 16777215 |
| INT | 0 | 4294967295 |
| BIGINT | 0 | 264-1 |
有符号类型与 Java 整数类型的对应关系
| MySQL |
Java |
| TINYINT | byte |
| SMALLINT | short |
| MEDIUMINT | - |
| INT | int |
| BIGINT | long |
占用存储
存储 (Bytes) |
|
| TINYINT | 1 |
| SMALLINT | 2 |
| MEDIUMINT | 3 |
| INT | 4 |
| BIGINT | 8 |
显示宽度
不会限制取值范围,
仅当同时设置 Zero Fill 时生效,
设置 Zero Fill 的同时会自动设置 Unsigned,
创建表,设置两个字段,
CREATE TABLE `test` (`num_first` int DEFAULT NULL,`num_second` int(4) unsigned zerofill DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
填充数据,
insert into test(num_first,num_second) values(1,1),(12345,12345);
查询结果
1 000112345 12345
