top
Loading...
11.4.2.BINARY和VARBINARY類型
11.4.2. BINARY和VARBINARY類型

BINARYVARBINARY類類似于CHARVARCHAR,不同的是它們包含二進制字符串而不要非二進制字符串。也就是說,它們包含字節字符串而不是字符字符串。這說明它們沒有字符集,并且排序和比較基于列值字節的數值值。

BINARYVARBINARY允許的最大長度一樣,如同CHARVARCHAR,不同的是BINARYVARBINARY的長度是字節長度而不是字符長度。

BINARYVARBINARY數據類型不同于CHAR BINARYVARCHAR BINARY數據類型。對于后一種類型,BINARY屬性不會將列視為二進制字符串列。相反,它致使使用列字符集的二元 校對規則,并且列自身包含非二進制字符字符串而不是二進制字節字符串。例如CHAR(5) BINARY被視為CHAR(5) CHARACTER SET latin1 COLLATE latin1_bin,假定默認字符集是latin1。這不同于BINARY(5),它保存5字節二進制字符串,沒有字符集或 校對規則。

當保存BINARY值時,在它們右邊填充值以達到指定長度。填充值是0x00(零字節)。插入值時在右側添加0x00 on,并且選擇時不刪除尾部的字節。比較時所有字節很重要,包括ORDER BYDISTINCT操作。比較時0x00字節和空格是不同的,0x00<空格。

例如:對于一個BINARY(3)列,當插入時 'a' 變為 'a 

作者:mysql.com
來源:http://dev.mysql.com/doc/refman/5.1/zh/column-types.html
北斗有巢氏 有巢氏北斗