MySQL中TEXT与BLOB字段类型的区别

 更新时间:2014年08月26日 11:27:15   投稿:junjie  
这篇文章主要介绍了MySQL中TEXT与BLOB字段类型的区别,本文总结了6大区别,需要的朋友可以参考下

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

下面给出几点区别:

一、主要差别

TEXT与BLOB的主要差别就是BLOB保存二进制数据,TEXT保存字符数据。目前几乎所有博客内容里的图片都不是以二进制存储在数据库的,而是把图片上传到服务器然后正文里使用<img>标签引用,这样的博客就可以使用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查询性能优化索引下推

    MySQL查询性能优化索引下推

    这篇文章主要介绍了MySQL查询性能优化索引下推,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下,希望对你的学习有所帮助
    2022-08-08
  • 清理Mysql general_log的方法总结

    清理Mysql general_log的方法总结

    在本篇文章里小编给大家分享的是一篇关于清理Mysql general_log的相关知识点,需要的朋友们学习下。
    2019-10-10
  • mysql安装图解总结

    mysql安装图解总结

    本篇文章给大家总结了在各种电脑环境系统下安装MYSQL的图解过程,以及遇到问题后的解决办法。
    2018-06-06
  • MySQL内连接和外连接及七种SQL JOINS的实现

    MySQL内连接和外连接及七种SQL JOINS的实现

    这篇文章主要介绍了Mysql内连接和外连接的区别以及七种SQL Joins的实现,相信看完这篇文章你对SQL内外连接的多表查询就足够理解了,需要的朋友可以参考下
    2023-03-03
  • linux mint 下mysql中文支持问题

    linux mint 下mysql中文支持问题

    这篇文章主要介绍了linux mint 下mysql中文支持问题的相关资料,需要的朋友可以参考下
    2015-10-10
  • Mysql字段为null的加减乘除运算方式

    Mysql字段为null的加减乘除运算方式

    这篇文章主要介绍了Mysql字段为null的加减乘除运算方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • MySQL之权限以及设计数据库案例讲解

    MySQL之权限以及设计数据库案例讲解

    这篇文章主要介绍了MySQL之权限以及设计数据库案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • mysql 5.7.17 winx64安装配置方法图文教程

    mysql 5.7.17 winx64安装配置方法图文教程

    这篇文章主要为大家分享了mysql 5.7.17winx64安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • Windows10下mysql 8.0.19 安装配置方法图文教程

    Windows10下mysql 8.0.19 安装配置方法图文教程

    这篇文章主要为大家详细介绍了Windows10下mysql 8.0.19 安装配置方法图文教程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • Mysql中的嵌套子查询问题

    Mysql中的嵌套子查询问题

    这篇文章主要介绍了Mysql嵌套子查询,子查询就是指的在一个完整的查询语句之中,嵌套若干个不同功能的小查询,从而一起完成复杂查询的一种编写形式,为了让读者更加清楚子查询的概念,感兴趣的朋友跟随小编一起看看吧
    2022-01-01

最新评论