Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Quanto armazenamento real é usado com uma declaração varchar (100) no mysql?


Mysql irá armazenar 5 bytes mais um byte para o comprimento. Se o varchar for maior que 255, ele armazenará 2 bytes para o comprimento.

Observe que isso depende do conjunto de caracteres da coluna. Se o conjunto de caracteres for utf8, o mysql exigirá até 3 bytes por caractere. Alguns mecanismos de armazenamento (ou seja, memória) sempre exigirão o comprimento máximo de bytes por caractere para o conjunto de caracteres.

Tornar uma coluna anulável significa que o mysql terá que separar um byte extra por até 8 colunas anuláveis ​​por linha. Isso é chamado de "máscara nula".

Não é nem consistente entre os mecanismos de armazenamento no mysql!