mariadb字符类型

mariadb中有多种字符类型,选择正确合理的字符类型,可以节约磁盘空间,提高工作效率。mariadb的字符类型有:

  • 整数
  • 浮点数
  • 字符串
  • 日期时间型

整数

类型 大小(字节) 范围(有符号) 范围(无符号) 用途
TINYINT 1 (-128,127) (0,255) 小整数值
SMALLINT 2 (-32 768,32 767) (0,65535) 大整数值
MEDIUMINT 3 ($-2^{23}$,$2^{23}-1$) (0,$2^{24}-1$) 大整数值
INT 4 ($-2^{31}$,$2^{31}-1$) (0,$2^{32}-1$) 大整数值
BIGINT 8 ($-2^{63}$,$2^{63}-1$) (0,$2^{64}-1$) 极大整数值

浮点数

类型 大小(字节) 范围(有符号) 范围(无符号) 用途
FLOAT 4 ($-2^{31}$,$2^{32}-1$) (0,$2^{32}-1$) 单精度浮点数值
DOUBLE 8 ($-2^{64}$,$2^{64}-1$) ($0,2^{64}-1$) 双精度浮点数值
DECLMAL 对于DECIMAL(M,D),为M+2 依赖于M和D的值 依赖于M和D的值 小数值

字符串

类型 大小(字节) 用途
char (0,255) 定长字符类型
varchar (0,$2^{16}$) 变长字符类型
TINYTEXT (0,255) 短文本字符串
TEXT (0,$2^{16}$) 长文本数据
MEDIUMTEXT (0,$2^{24}$) 中等长度文本数据
LONGTEXT (0,$2^{32}$) 极大文本数据
ENUM (0,$2^{16}$) 枚举

日期时间型

类型 大小(字节) 格式 范围 用途
DATE 3 YYYY-MM-DD (1000-01-01, 9999-12-31) 日期值
TIME 3 HH:MM:SS (‘-838:59:59’,’838:59:59’) 时间值或持续时间
DATE 3 YYYY (1901,2155) 年份值
DATETIME 8 YYYY-MM-DD HH:MM:SS (1000-01-01 00:00:00,999-12-31 23:59:59) 混合日期时间值
TIMESTAMP 4 YYYYMMDD HHMMSS (1970-01-01 00:00:00,2037年) 时间戳