在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程序的博主不知道改为自己的博客正文字段选择TEXT还是BLOB类型。

下面给出几点区别:

一、主要差别

TEXT与BLOB的主要差别就是BLOB保存二进制数据,TEXT保存字符数据。目前几乎所有博客内容里的图片都不是以二进制存储在数据库的,而是把图片上传到服务器然后正文里使用标签引用,这样的博客就可以使用TEXT类型。而BLOB就可以把图片换算成二进制保存到数据库中。

二、类型区别

BLOB有4种类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。

TEXT也有4种类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些类型同BLOB类型一样,有相同的最大长度和存储需求。

三、字符集

BLOB列没有字符集,并且排序和比较基于列值字节的数值值。TEXT列有一个字符集,并且根据字符集的校对规则对值进行排序和比较

四、大小写

在TEXT或BLOB列的存储或检索过程中,不存在大小写转换,都一样!

五、严格模式

运行在非严格模式时,如果你为BLOB或TEXT列分配一个超过该列类型的最大长度的值值,值被截取以保证适合。如果截掉的字符不是空格,将会产生一条警告。使用严格SQL模式,会产生错误,并且值将被拒绝而不是截取并给出警告。

六、其它

当保存或检索BLOB和TEXT列的值时不删除尾部空格。

对于BLOB和TEXT列的索引,必须指定索引前缀的长度。

BLOB和TEXT列不能有默认值。

当排序时只使用该列的前max_sort_length个字节。max_sort_length的 默认值是1024。

当你想要使超过max_sort_length的字节有意义,对含长值的BLOB或TEXT列使用GROUP BY或ORDER BY的另一种方式是将列值转换为固定长度的对象。标准方法是使用SUBSTRING函数。

BLOB或TEXT对象的最大大小由其类型确定,但在客户端和服务器之间实际可以传递的最大值由可用内存数量和通信缓存区大小确定。你可以通过更改max_allowed_packet变量的值更改消息缓存区的大小,但必须同时修改服务器和客户端程序。

mysql blob 字段_MySQL中TEXT与BLOB字段类型的区别相关推荐

  1. mysql数据库blob区别_MySQL中TEXT与BLOB字段类型的区别

    在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程序的博主不知道改为自己的博客正文字段选择TEXT还是BLOB类型. 下面给出几点区别: 一.主要差别 TEXT ...

  2. mysql中char和text的区别_mysql中text与varchar与char的区别

    char类型 CHAR列的长度固定为创建表时声明的长度.长度可以为从0到255的任何值.当保存CHAR值时,在它们的右边填充空格以达到指定的长度.当检索到CHAR值时,尾部的空格被删除掉.在存储或检索 ...

  3. mysql排序规则_MySQL中Order By多字段排序规则代码示例

    说在前面 突发奇想,想了解一下mysql order by排序是以什么规则进行的? 好了,话不多说,直接进入正题吧. MySql order by 单字段 建一测试表如下: CREATE TABLE ...

  4. mysql int(3)_MySQL中int(11)与int(3)的区别_MySQL

    11.2. 数值类型 MySQL支持所有标准SQL数值数据类型.这些类型包括严格数值数据类型(INTEGER.SMALLINT.DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT.RE ...

  5. mysql longtext查询_MySQL中TEXT、TINYTEXT、MEDIUMTEXT、LONGTEXT选择

    储存不区分大小写的字符数据 TINYTEXT 最大长度是 255 (2^8 – 1) 个字符. TEXT 最大长度是 65535 (2^16 – 1) 个字符. MEDIUMTEXT 最大长度是 16 ...

  6. mysql ipv6 字段_MySQL中ipv6地址用什么类型存储?

    ipv6逐渐普及了,我们的服务要支持用户通过ipv6和iPv4地址请求,存储用户来源IP势在必行. pgsql中有ip地址类型,mysql没有. mysql提供的方案是用二进制存储用函数做转换为人可读 ...

  7. mysql _bin编码_mysql中utf8_bin、utf8_general_ci、utf8_general_cs编码区别

    在mysql中存在着各种utf8编码格式,如下表: 1)utf8_bin 2)utf8_general_ci 3)utf8_general_cs utf8_bin将字符串中的每一个字符用二进制数据存储 ...

  8. 【mysql】mysql 中 text,longtext,mediumtext 字段类型的意思, 以及区别

    mysql 中 text,longtext,mediumtext 字段类型的意思, 以及区别 mysql 中 text,longtext,mediumtext 字段类型区别为:字节限制不同.I/O 不 ...

  9. mysql中engine是什么意思_mysql中engine=innodb和engine=myisam的区别

    最开始用MySQL Administrator建数据库的时候,表缺省是InnoDB类型,也就没有在意.后来用Access2MySQL导数据的时候发现只能导成 MyISAM类型的表,不知道这两种类型有什 ...

最新文章

  1. Paper:2020年3月30日何恺明团队最新算法RegNet—来自Facebook AI研究院《Designing Network Design Spaces》的翻译与解读
  2. 防止电脑自动休眠小妙招
  3. ffmpeg builds by zeranoe_FFmpeg
  4. 从SQL SERVER 2000到SQL SERVER 2005 视图中存在 ORDER BY 语句的完全解决方案
  5. 第五季1:AP模式USB-WIFI网卡移植与测试
  6. 【Machine Learning 五】Coursera无法观看课程解决方案
  7. 因多年不受重视,研究员公开2个未修复 Tor 0day且承诺再放3个
  8. uniapp实现的购物列表左右联动功能
  9. 浊度仪行业调研报告 - 市场现状分析与发展前景预测
  10. 重庆大学计算机学院专硕分析,重庆大学电子信息(专硕)专业考研难度分析-专业排名-难度大小...
  11. java框架-Springmvc-quzrtz-jasperreport-pio-pdfbox-jedis
  12. python+opencv制作电脑摄像头扫描二维码并自动打开
  13. Ubuntu 10.04 下载(官方地址)
  14. 【深度好文】python加速库cython简介
  15. 搭建CTPN网络(基于windows与tensorflow)
  16. web前端面试(一)
  17. jQuery 学习-样式篇(五):jQuery 设置元素的 html 结构或 text 内容
  18. 2016ACM/ICPC亚洲区大连站现场赛题解报告
  19. 效果超好的自制美白面膜大汇总 - 健康程序员,至尚生活!
  20. 人工智能正成为推动教育高质量发展步入“快车道”的有效支撑手段

热门文章

  1. JWT实现token-based会话管理
  2. 数据库和MySQL相关面试题目
  3. 我们需要StringBuffer么?
  4. C#读写xml文件应用
  5. 用Selenium自动化测试时,让ChromeDriver中不显示“正受到自动测试软件控制”
  6. 清除webBrowser 缓存和Cookie的解决方案
  7. Asp.net,C# 纯数字加密解密字符串
  8. .Net解析html文档类库HtmlAgilityPack完整使用说明
  9. 阿里云可以外链mysql_案例详细说明阿里云下设置MySQL远程连接步骤
  10. python算法与数据结构-归并排序算法