blob
是什么,text
是什么?有什么区别?
我什么时候需要使用blob
,什么时候需要text
作为数据类型?
因为对于blob
和text
,存在mediumblob
==mediumtext
、smallblob
==small text
。它们有相同的含义吗?
看看这个MEDIUMBLOB
,MEDIUMTEXT L
+3字节,其中L < 224
。
什么是L
?
TEXT和CHAR将转换为它们与时间关联的字符集。BLOB和BINARY只是存储字节。
BLOB用于存储二进制数据,而Text用于存储大字符串。
BLOB值被视为二进制字符串(字节字符串)。它们没有字符集,排序和比较基于列值中字节的数值。
TEXT值被视为非二进制字符串(字符串)。它们有一个字符集,并且根据字符集的排序规则对值进行排序和比较。
http://dev.mysql.com/doc/refman/5.0/en/blob.html
Blob数据类型存储二进制对象,如图像,而文本数据类型存储文本对象,如网页的文章
TEXT和CHAR或nchar,它们通常会转换为纯文本,因此您只能像字符串一样存储文本。
BLOB和BINARY意味着您可以存储二进制数据,例如图像,只需存储字节。
在这种情况下,L用于说明存储要求。(长度|大小+3),只要它小于224。
参考:http://dev.mysql.com/doc/refman/5.0/en/blob.html
根据高性能Mysql书籍:
BLOB和TEXT族之间的唯一区别在于类型存储没有排序规则或字符集的二进制数据,但TEXT类型具有字符集和排序规则。
BLOB存储大于2GB的二进制数据。BLOB的最大大小为4 GB。二进制数据是指非结构化数据,即图像音频文件视频文件数字签名
文本用于存储大字符串。