¿Qué tipo de datos es varchar?
VARCHAR (M) es un tipo de datos más flexible que CHAR y también se utiliza para representar datos de caracteres.
VARCHAR puede almacenar cadenas de longitud variable. Donde M representa la longitud máxima de la cadena que este tipo de datos puede guardar. Siempre que la longitud de la cadena sea menor que el valor máximo, se puede guardar en este tipo de datos.
Por lo tanto, para aquellos objetos de datos cuya longitud exacta es difícil de estimar, es más sensato utilizar el tipo de datos VARCHAR. Antes de MySQL 4.1, la longitud máxima admitida por el tipo de datos VARCHAR era 255. Las versiones 5.0 y superiores admitían una longitud de 65535 bytes y un máximo de 21843 caracteres (no vacíos) bajo codificación utf8.
Otro beneficio destacado del campo VARCHAR es que ocupa menos memoria y espacio en el disco duro que el campo CHAR. Este ahorro de memoria y espacio en disco puede llegar a ser muy importante cuando la base de datos es grande.
Características de varchar:
1. Ocupa menos espacio de almacenamiento que el tipo de longitud fija (char) (excepto las tablas MyISAM creadas con ROW_FORMAT=FIXED).
2. Utilice 1-2 bytes adicionales para almacenar la longitud del valor. Si la longitud de la columna es <= 255, utilice 1 byte para guardarlo. En otros casos, utilice 2 bytes para guardarlo. Por ejemplo, varchar(10) ocupará 11 bytes de espacio de almacenamiento y varchar(500) ocupará 502 bytes de espacio de almacenamiento.
3. Ahorre espacio, por lo que el rendimiento será útil. Se incurrirá en trabajo adicional al actualizar. La longitud máxima es mucho mayor que la longitud promedio. Es adecuado utilizar varchar cuando las actualizaciones rara vez ocurren porque hay menos fragmentos.
4. En las versiones 5.0 y superiores, los espacios al final de la cadena se guardarán cuando se tome o establezca el valor. Las versiones anteriores a la 4.1 eliminarán los espacios al final de la cadena.