十、MySQL基础系列笔记之数据类型

作者: 温新

分类: 【MySql】

阅读: 2172

时间: 2020-10-11 08:41:31

每一个常量、变量和参数都是数据类型,用来指定一定的存储格式、约束和有效范围。

MySQL提供的数据类型有数值型、字符串类型、日期类型、时间类型。

整数类型

类型名称 字节 有符号(最小值) 无符号(最大值) 说明
tinyint 1 -128~127 0~255 很小的整数
smallint 2 -32768~32767 0~65535 小的整数
mediumint 3 -8388608~8388607 0~16777215 中等大小的整数
int 4 -2147483648~2147483647 0~4294967295 普通大小的整数
bigint 8 -9223372036854775808~9223372036854775807 0~18446744073709551615

浮点型

类型名称 字节 说明
float 4 单精度浮点数
double 8 双精度浮点数
decimaal(m,d) M+2个字节 定点数

float类型取值范围

1)有符号取值范围:-3.402823466E+38~-1.175494351E-38

2)无符号取值范围:0和1.175494351E-38~3.402823466E+38

double类型取值范围

1)有符号取值范围:-1.7976931348623157E+308~-2.2250738585072014E-308

2)无符号取值范围:0和2.2250738585072014E-308~1.7976931348623157E+308

字符串类型

类型名称 字节 说明
char(m) m,m为0~255之间的整数 固定长度非二进制字符串
varchar(m) m,m为0~65535之间的整数 变长非二进制字符串
tinytext 允许长度0~255字节,值的长度+2个字节 非常小的非二进制字符串
text 允许长度0~65535字节,值的长度+2个字节 小的非二进制字符串
mediumtext 允许长度0~167772150字节,值的长度+3个字节 中等大小非二进制字符串
longtext 允许长度0~224字节,值的长度+4个字节 大的非二进制字符串
enum 1或2个字节,取决于枚举值的数目(最大值65535) 枚举类型,只能有一个枚举字符串值
set 1,2,3,4或8个字节,取决于集合成员的数量(最多64个成员) 一个设置,字符串对象可以有0个或多个成员

二进制字符串类型

类型名称 字节 说明
bit(m) 约(m+7)/8个字节 位字段类型
binary(m) m个字节 固定长度二进制字符串
varbinary(m) m+1字节 变长二进制字符串
tinyblob(m) m+1字节,m<255 非常小的blob
blob(m) m+2字节,m<65535 小的blob
mediumblob(m) m+3字节,m<167772150 中等大小的blob
longblob(m) m+4字节,m<232 非常大的blob

日期与时间类型

类型名称 字节 日期格式 范围 说明
year 1 YYYY 1901~2155
time 3 HH::MM::SS -838:59:59~838:59:59
date 3 YYYY-MM-DD 1000-01-01~9999-12-3
datetime 8 YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~9999-12-31 23:59:59
timestamp 4 YYYY-MM-DD HH:MM:SS 1970-01-01 00:00:01 UTC ~ 2038-01-19 03:14:07 UTC

JSON类型

JSON实际是JavaScript的一个子集,支持的数据类型有NUMBER、STRING、BOOLEAN、NULL、ARRAY、OBJECT。

2020-10-11

请登录后再评论