MySQL的BLOB和TEXT区别

前言

在 MySQL中,BLOB 和TEXT数据类型都用于存储大量数据。BLOB的全称是BinaryLarge Object,所以他主要被设计出来是存储二进制数据的,而TEXT主要是用于存储文本数据。

text使用场景:

要存长文本,如文章、扩展信息等等,则通常使用TEXT。可以对数据进行字符集转换和排序等操作。

BLOB 使用场景:

要在数据库中存储二进制数据,比如图像、音频、视频等等,就可以把他们的二进制的对象存储到BLOB中。不会对存储的数据进行字符集转换,并且不支持排序。

BLOB 和 TEXT 类型都有不同的变种,分别支持不同的存储大小:

  • TINYBLOB/TINYTEXT:存储最大长度为 255 字节
  • BLOB/TEXT:存储最大长度为 65,535 字节(64 KB)
  • MEDIUMBLOB/MEDIUMTEXT:存储最大长度为16,777,215 字节(16 MB)
  • LONGBLOB/LONGTEXT:存储最大长度为 4,294,967,295 字节(4 GB
存储内容 字符集转换 排序 类型
blob 二进制 不支持 不支持 TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB
text 文本 支持 支持 TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT
相关推荐
hunter19901018 分钟前
Spring线程池ThreadPoolTaskExecutor配置与实践
java·后端·spring
皇族崛起28 分钟前
【docker安装部署】- 一个可用的Docker 镜像配置 和 DNS配置
java·docker·容器
互亿无线明明34 分钟前
国际短信通知服务:如何为全球业务构建稳定的跨国消息触达体系?
java·c语言·python·php·objective-c·ruby·composer
深盾科技34 分钟前
Linux跨进程内存操作的3种方法及防护方案
java·linux·网络
Jerry9527062839 分钟前
1.什么式可用性
java·分布式·后端·架构·高可用·秒杀
轻描淡写60639 分钟前
二进制存储数据
java·开发语言·算法
君爱学习1 小时前
JVM对象分配内存如何保证线程安全?
java
一点晖光1 小时前
Docker 中 Crontab 不执行的原因与解决方案
java·docker·定时任务
BD_Marathon1 小时前
【JavaWeb】Tomcat_部署项目方式
java·tomcat
倔强的小石头_1 小时前
Python 从入门到实战(六):字典(关联数据的 “高效管家”)
java·服务器·python