Recuerde que MySQL tiene un límite máximo de tamaño de fila
La representación interna de una tabla MySQL tiene un límite máximo de tamaño de fila de 65.535 bytes, sin contar los tipos BLOB y TEXT. Las columnas BLOB y TEXT solo contribuyen de 9 a 12 bytes al límite de tamaño de fila porque su contenido se almacena por separado del resto de la fila. Obtenga más información sobre Límites en el número de columnas de la tabla y el tamaño de fila .
El tamaño máximo que puede ocupar una sola columna es diferente antes y después de MySQL 5.0.3
Los valores en las columnas VARCHAR son cadenas de longitud variable. La longitud se puede especificar como un valor de 0 a 255 antes de MySQL 5.0.3 y de 0 a 65 535 en 5.0.3 y versiones posteriores. La longitud máxima efectiva de un VARCHAR en MySQL 5.0.3 y versiones posteriores está sujeta al tamaño máximo de fila (65 535 bytes, que se comparte entre todas las columnas) y el juego de caracteres utilizado.
Sin embargo, tenga en cuenta que el límite es menor si utiliza un conjunto de caracteres de varios bytes como utf8 o utf8mb4.
Usar TEXT
tipos para superar el límite de tamaño de fila.
Los cuatro tipos de TEXTO son TINYTEXT, TEXT, MEDIUMTEXT y LONGTEXT. Estos corresponden a los cuatro tipos de BLOB y tienen las mismas longitudes máximas y requisitos de almacenamiento.
Más detalles sobre los tipos BLOB y TEXT
- Referencia para MySQLv8.0 https://dev.mysql .com/doc/refman/8.0/en/blob.html
- Referencia para MySQLv5.7 https://dev.mysql .com/doc/refman/5.7/en/blob.html
- Referencia para MySQLv5.6 https://dev.mysql .com/doc/refman/5.6/en/blob.html
Aún más
Consulte más detalles en Requisitos de almacenamiento de tipos de datos que se ocupa de los requisitos de almacenamiento para todos los tipos de datos.