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
相关推荐
二哈赛车手6 小时前
新人笔记---ApiFox的一些常见使用出错
java·笔记·spring
栗子~~7 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
YDS8297 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— RAG知识库的搭建和接口实现
java·ai·springboot·agent·rag·deepseek
未若君雅裁9 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手9 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
阿维的博客日记9 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI10 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
辰海Coding11 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
小小编程路11 小时前
C++ 多线程与并发
java·jvm·c++
AI视觉网奇11 小时前
linux 检索库 判断库是否支持
java·linux·服务器