Por definición:
VARCHAR: el rango de longitud es de 1 a 255 caracteres. Los valores VARCHAR se ordenan y comparan sin distinción entre mayúsculas y minúsculas, a menos que se proporcione la palabra clave BINARY. x + 1 bytes
TINYBLOB, TINYTEXT: Una columna BLOB o TEXT con una longitud máxima de 255 (2 ^ 8 - 1) caracteres x + 1 bytes
Entonces, en base a esto, creo la siguiente tabla:
CREATE TABLE `user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255),
`lastname` tinytext,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
¿O es mejor crear un varchar o tinytext y por qué ?
¿Es lo mismo para:
VARCHAR: el rango de longitud es> 255 caracteres. Los valores VARCHAR se ordenan y comparan sin distinción entre mayúsculas y minúsculas, a menos que se proporcione la palabra clave BINARY. x + 2 bytes
BLOB, TEXT Una columna BLOB o TEXT con una longitud máxima de 65535 (2 ^ 16 - 1) caracteres x + 2 bytes
Respuestas:
En este caso
varchar
es mejor.Tenga en cuenta que
varchar
puede ser de 1 a 65535 caracteres.Los blobs se guardan en una sección separada del archivo.
Requieren una lectura de archivo adicional para incluir en los datos.
Por esta razón, varchar se obtiene mucho más rápido.
Si tiene un blob grande al que accede con poca frecuencia, entonces un blob tiene más sentido.
El almacenamiento de los datos de blob en un archivo separado (parte del) permite que el archivo de datos principal sea más pequeño y, por lo tanto, se obtenga más rápido.
fuente