mysql中整数数据类型tinyint详解
简介
在mysql中,tinyint是整数数据类型之一,通常用来存储数值型的数据。本文将详细介绍tinyint的相关知识。
定义
在mysql中,tinyint的定义方式如下:
tinyint [ (M) ] [ UNSIGNED ] [ ZEROFILL ]
其中M
表示数字的位数,范围为1-255,默认为4;UNSIGNED
表示是否使用无符号数,取值为UNSIGNED
或空;ZEROFILL
表示数值位数不足时是否补零,取值为ZEROFILL
或空。
范围
tinyint的取值范围与符号和位数相关,范围如下:
类型 | 位数 | 范围 |
---|---|---|
TINYINT | 8 | -128 to 127 |
TINYINT | 8 | 0 to 255 |
TINYINT | 16 | -32768 to 32767 |
TINYINT | 16 | 0 to 65535 |
TINYINT | 24 | -8388608 to 8388607 |
TINYINT | 24 | 0 to 16777215 |
TINYINT | 32 | -2147483648 to 2147483647 |
TINYINT | 32 | 0 to 4294967295 |
TINYINT | 64 | -9223372036854775808 to 9223372036854775807 |
TINYINT | 64 | 0 to 18446744073709551615 |
需要注意的是,如果定义了UNSIGNED
选项,则范围变为非负数;如果定义了ZEROFILL
选项,则不足位数会被补0。
示例
下面是使用tinyint的两个示例:
示例一
CREATE TABLE example(
id tinyint UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
num tinyint(2) UNSIGNED DEFAULT 0
);
上述示例中,定义了一个名为example
的表,其中id
是一个无符号的tinyint类型的自增主键,num
是长度为2的无符号tinyint类型的字段,初始值为0。
示例二
CREATE TABLE employee(
id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
name varchar(50) NOT NULL,
age tinyint(3) UNSIGNED
);
上述示例中,定义了一个名为employee
的表,其中id
是一个自增主键,name
是一个长度为50的不可为空的varchar类型的字段,用于存储员工姓名,age
是一个长度为3的无符号tinyint类型的字段,用于存储员工年龄。
总结
本文介绍了mysql中整数数据类型tinyint相关的知识,包括了tinyint的定义、范围和两个示例。要根据实际情况合理使用tinyint。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mysql中整数数据类型tinyint详解 - Python技术站