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
相关推荐
一只叫煤球的猫4 分钟前
从夯到拉,锐评13个Java Web框架
java·后端·程序员
heartbeat..11 分钟前
JUC 在实际业务场景的落地实践
java·开发语言·网络·集合·并发
tryxr12 分钟前
线程安全的类 ≠ 线程安全的程序
java·开发语言·vector·线程安全
rchmin22 分钟前
Java内存模型(JMM)详解
java·开发语言
Wpa.wk29 分钟前
Tomcat的安装与部署使用 - 说明版
java·开发语言·经验分享·笔记·tomcat
吧啦蹦吧34 分钟前
java.lang.Class#isAssignableFrom(Class<?> cls)
java·开发语言
都是蠢货42 分钟前
drop delete和truncate的区别?
java·开发语言
凤凰战士芭比Q1 小时前
Nexus仓库(maven仓库、Yum仓库、APT仓库)
java·maven
864记忆1 小时前
Linux操作系统自带的测试内存泄漏的命令
java·linux·运维
Jul1en_1 小时前
【算法】分治-归并类题目
java·算法·leetcode·排序算法