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
相关推荐
NE_STOP7 小时前
MyBatis-配置文件解读及MyBatis为何不用编写Mapper接口的实现类
java
后端AI实验室12 小时前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai
程序员清风14 小时前
小红书二面:Spring Boot的单例模式是如何实现的?
java·后端·面试
belhomme14 小时前
(面试题)Redis实现 IP 维度滑动窗口限流实践
java·面试
Be_Better14 小时前
学会与虚拟机对话---ASM
java
开源之眼17 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
Maori31617 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
用户9083246027318 小时前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋18 小时前
DecimalFormat 与 BigDecimal
java·后端
beata18 小时前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端