MySQL字段类型

整数类型

类型 名称 大小 范围(有符号) 范围(无符号)
tinyint 极小整数值 1字节 -128~127 0~256
smallint 小整数值 2字节 -32768~32767 0~65535
mediumint 中等整数值 3字节 -8388608~8388607 0~16777215
int 整数值(基本数据类型) 4字节 -2147483648~2147483647 0~4294967295
integer 整数值(引用数据类型) 4字节 -2147483648~2147483647 0~4294967295
bigint 极大整数值 8字节 -9223372036854775808~9223372036854775807 0~18446744073709551615

int 和 integer 区别

  1. 数据类型不同。int 是基本数据类型,是对 integer 的拆箱;integer 是引用数据类型,是对 int 的装箱
  2. 字段默认值不同。在设置字段的默认值时,int 的默认值是 0 ,integer的默认值是 null;
  3. 存储不同。int 作为对象,可以直接存储数值;integer 需要实例化对象,实际上是生成一个指针指向对象的地址

浮点数类型

类型 名称 大小 范围(有符号) 范围(无符号)
float 单精度浮点数值 4字节 -3.402823466E+38~-1.175494351E-38 0 和 -1.175494351E-38~-3.402823466E+38
real 不精确的双精度浮点型 4字节 -3.40E+38~-1.18E-38 0和1.18E-38~3.40E+38
double 双精度浮点数值 8字节 -1.7976931348623157E+308~-2.2250738585072014E-308 0 和 -2.2250738585072014E-308~-1.7976931348623157E+308

字符串类型

类型 名称 大小
char 定长字符串 0~255字节
varchar 变长字符串 0~65535字节
bit(M) 位字段 (M+7)/ 8字节
binary(M) 定长二进制字符串 M字节
varbinary(M) 变长二进制字符串 (M+1)字节
tinyblob 较短的二进制字符串 0~255字节
blob 二进制字符串 0~65535字节
mediumblob 中等长度的二进制字符串 0~16777215字节
longblob 较长的二进制字符串 0~4294967295字节
tinytext 短文本字符串 0~255字节
text 文本字符串 0~65535字节
mediumtext 中等长度的文本字符串 0~16777215字节
longtext 极大长度的文本字符串 0~4294967295字节

日期类型

类型 名称 大小 格式 范围
date 年月日 3字节 YYYY-MM-DD 1000-01-01 ~ 9999-12-31
time 时分秒 3字节 HH:MM:SS ‘-838:59:59’ ~ ‘838:59:59’
year 年份 1字节 YYYY 1901 ~ 2155
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

集合类型

类型 名称 数量 属性
enum 枚举 20个以内 字符串对象
set 无序集合 >=0个 字符串对象

你可能感兴趣的:(MySQL,mysql)