BLOB类型的字段用于存储二进制数据
MySQL中,BLOB是个类型系列,包括:TinyBlob、Blob、MediumBlob、LongBlob,这几个类型之间的唯一区别是在存储文件的最大大小上不同。
MySQL的四种BLOB类型
类型 大小(单位:字节)
TinyBlob 最大 255
Blob 最大 65K
MediumBlob 最大 16M
LongBlob 最大 4G
区别
1. blob
blob类型的字段可以存储任何编码为二进制的数据。
向blob类型的字段存储数据时,通常需要先编码为二进制再存储。如:
对于文本字符,先用utf-8、gbk或其他编码方式对文本进行编码,成为二进制,然后再存储。
对于图片数据,线用base64或其他编码方式对其编码,成为二进制,然后再存储。
取数据时,取出后需要先用相应的编码方式对其解码,才能看到原来文本字符,图片或其他数据。
存储时,编码需要程序员用相应的算法进行进行编码,然后再存储。
读取时,先读取出来,程序员再用相应的算法进行解码,才能看到原始数据。
2. text
text类型的字段只能存储文本数据。
向text类型的字段存储数据时,存储时mysql会将文本字符会按字段指定的编码方式进行编码为二进制,然后存储。
存储时,编码是mysql自动进行编码。
读取时,解码是mysql自动进行解码。