sql >> Base de Datos >  >> RDS >> Mysql

Cuándo usar TEXTO en mysql en lugar de VARCHAR

Un VARCHAR largo se almacena de la misma manera que un TEXT /BLOB campo en InnoDB .

fuente

A menos que necesite indexar estas columnas (en cuyo caso VARCHAR es mucho más rápido) no hay razón para usar VARCHAR sobre TEXT para campos largos:hay algunas optimizaciones específicas del motor en MySQL para ajustar la recuperación de datos según la longitud, y debe usar el tipo de columna correcto para aprovecharlos.

En caso de que esté utilizando MyISAM una discusión detallada sobre el tema está aquí .

TEXT y BLOB se almacenan fuera de la tabla y la tabla solo tiene un puntero a la ubicación del almacenamiento real.

VARCHAR se almacena en línea con la tabla. VARCHAR es más rápido cuando el tamaño es razonable.

Según esta prueba , VARCHAR es aproximadamente tres veces más rápido que el texto.