Los tipos BINARY
y
VARBINARY
son similares a
CHAR
y VARCHAR
, excepto
que contienen cadenas de caracteres binarias en lugar de cadenas
de caracteres no binarias. Esto es, contienen cadenas de bytes
en lugar de cadenas de caracteres. Esto significa que no tienen
conjunto de caracteres asignado, y la comparación y ordenación
se basa en los valores numéricos de los valores de los bytes.
La longitud máxima disponible es la máxima para
BINARY
t VARBINARY
como
para CHAR
y VARCHAR
,
excepto que la longitud para BINARY
y
VARBINARY
es una longitud en bytes en lugar
de en caracteres.
El tratamiento de los espacios finales es el mismo para
BINARY
y VARBINARY
como lo
es para CHAR
y VARCHAR
.
Cuando se almacenan los valores BINARY
, se
rellenan con espacios a la derecha hasta la longitud
especificada. Cuando los valores BINARY
se
recuperan, los espacios finales se eliminan. Para
VARBINARY
, los espacios finales se eliminan
cuando los valores se almacenan. Desde MySQL 5.0.3, los espacios
finales se mantienen. Debe considerar estas características si
planea usar estos tipos de datos para almacenar datos binarios
que deban acabar con espacios.
En MySQL 5.0, BINARY
y
VARBINARY
son tipos de datos distintos. Para
CHAR(
y
M
) BINARYVARCHAR(
,
el atributo M
) BINARYBINARY
hace que se use la
colación binaria para la columna, pero la columna no contiene
cadenas de caracteres no binarios en lugar de cadenas binarias
de bytes. Por ejemplo CHAR(5) BINARY
se trata
como CHAR(5) CHARACTER SET latin1 COLLATE
latin1_bin
, asumiendo que el conjunto de caracteres
por defecto es latin1
.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.