类型MySQL中的二进制数据类型介绍(mysql二进制数据)
MySQL数据库中有关二进制数据类型的介绍,有BINARY, VARBINARY, BLOB 等。
BINARY 二进制数据类型,它由一个字节序列组成,每个字节最多包含8比特。它允许存储最大长度为255(CHAR(255)的最大长度)。BINARY类型的数据在比较或排序时,字节将按字节顺序从左到右比较,而不是按字符串形式比较,因此比较会更快。下面是一个使用BINARY类型的例子:
CREATE TALBE foo (
id INT NOT NULL AUTO_INCREMENT,binary_data BINARY(20) NOT NULL,
PRIMARY KEY (id)) HEADER CHARSET=utf8;
VARBINARY 二进制数据类型,允许存储可变长度的字节序列,最大长度可达65535(CHAR(65535)的最大长度),与BINARY不同,VARBINARY中的字节顺序仍然按字符串形式比较,因此在比较时效率会较慢。下面是一个使用VARBINARY类型的例子:
CREATE TALBE foo (
id INT NOT NULL AUTO_INCREMENT,varbinary_data VARBINARY(20) NOT NULL,
PRIMARY KEY (id)) HEADER CHARSET=utf8;
BLOB 二进制数据类型,是可变长度的二进制数据类型,允许存储最大为65,535字节,相对于BINARY和VARBINARY,它允许存储更大的数据,而且存储的数据不受编码影响。下面是一个使用BLOB类型的例子:
CREATE TALBE foo (
id INT NOT NULL AUTO_INCREMENT,blob_data BLOB NOT NULL,
PRIMARY KEY (id)) HEADER CHARSET=utf8;
MySQL数据库允许使用上述三种类型之一存储二进制数据,根据不同场景选择以上不同类型的数据,可以有效地提高数据的存储效率和读取的速度。