二进制字符串类型分类
MySQL支持两类字符型数据:
1. 文本字符串
2. 二进制字符串
二进制字符串类型列表
类型名称 | 说明 | 存储需求 |
---|---|---|
BIT(M) | 位字段类型 | 大约 (M+7)/8 字节 |
BINARY(M) | 固定长度二进制字符串 | M 字节 |
VARBINARY(M) | 可变长度二进制字符串 | M+1 字节 |
TINYBLOB | 非常小的BLOB | L+1 字节,L<2^8 |
BLOB | 小 BLOB | L+2 字节,L<2^16 |
MEDIUMBLOB | 中等大小的BLOB | L+3 字节,L<2^24 |
LONGBLOB | 非常大的BLOB | L+4 字节,L<2^32 |
各类型详解
BIT类型
位字段类型
M表示每个值的位数,范围1~64,默认1
值长度小于M时左边用0填充
示例:BIT(6)存储b'101'实际为b'000101'
不能插入超出指定范围的值
BINARY和VARBINARY类型
类似于CHAR和VARCHAR,但存储二进制字节字符串
BINARY:
固定长度
不足长度右边填充"\0"
存储空间固定为M字节
VARBINARY:
可变长度
实际空间为字符串长度+1
最大长度不超过M
BLOB类型
二进制大对象,存储可变数量数据
四种类型及最大长度:
数据类型 存储范围
TINYBLOB 255字节 (2^8-1)
BLOB 65,535字节 (2^16-1)
MEDIUMBLOB 16,777,215字节 (2^24-1)
LONGBLOB 4GB (2^32-1)
BLOB与TEXT的区别
BLOB存储二进制字符串(字节字符串)
TEXT存储非二进制字符串(字符字符串)
BLOB比较基于字节数值
TEXT比较基于字符集排序规则
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程