Quiero saber si el tipo de datos mysql TEXT
se reserva el espacio aunque no haya datos en esa fila?¿Mysql Text DataType reserva espacio de memoria
Estoy confundido. ¿Alguien puede darme alguna información sobre esto?
Quiero saber si el tipo de datos mysql TEXT
se reserva el espacio aunque no haya datos en esa fila?¿Mysql Text DataType reserva espacio de memoria
Estoy confundido. ¿Alguien puede darme alguna información sobre esto?
Normalmente, no. text
las columnas se almacenan lejos de la fila, por lo que no ocupan espacio en la fila, per se. En cambio, la fila mantiene un puntero a la columna text
(que ocupa ocupa espacio, pero solo 4 bytes-ish (depende del sistema) una fila), pero la columna text
permanecerá vacía hasta que la rellene.
Ahora, varchar
columnas asignarán espacio para su máximo en la inserción, pero solo ocuparán el espacio necesario por su contenido. char
columnas, sin embargo, siempre utilizará el espacio especificado. Por lo tanto, esto es lo que se ve cada columna con la frase "waffles":
varchar(15): 'waffles'
char(15): 'waffles '
text: 'waffles'
Esperemos que esto ayude.
¿Esto se cumple para todos los tipos de texto, es decir texto medio, texto largo, etc.? Estoy usando el motor inno-db por ahora. También quería confirmar si se realiza algún tipo de compactación, es decir, si pongo solo 10 bytes en el campo de texto, ¿se compactará o adquirirá 64 KB? – user2098324