CHAR vs. VARCHAR: Qual é a diferença?
Neste artigo, veremos as semelhanças e diferenças entre dois tipos de dados MySQL: VARCHAR e CHAR.
Se você se encontrou no espaço do MySQL, mesmo que por pouco tempo, você já sabe que o MySQL e outros tipos de dados oferecem alguns tipos de dados para os desenvolvedores escolherem. A grande maioria dos tipos de dados mais populares oferecidos pelo MySQL .
O que é CHAR e VARCHAR?
CHAR significa "valores de caracteres" e VARCHAR significa "valores de caracteres variáveis".
Ambos CHAR e VARCHAR diferem de outros tipos de dados semelhantes pelo fato de que ambos são considerados tipos de dados de comprimento fixo: criamos ambos CHAR e VARCHAR tipos de dados com um comprimento "fixo" que pode variar de 0 a 255 caracteres de tamanho se CHAR estiver sendo usado ou de 1 a 65.535 caracteres se VARCHAR estiver em uso. Quanto maior o tamanho dos nossos dados, mais espaço nossos caracteres ocuparão (isso provavelmente não será um problema muito grande, no entanto, se seus dados crescerem, você deve ficar de olho na estrutura do seu banco de dados e aprender a trabalhar com conjuntos de big data).
CHAR vs. VARCHAR
À primeira vista, ambos CHAR e VARCHAR podem parecer muito. No entanto, quando nos aprofundamos nisso, notamos que o MySQL esconde suas diferenças dentro de sua arquitetura:
CHAR
Comprimento fixo
Sempre ocupa a mesma quantidade de espaço, independentemente do que está armazenado
Pode conter um máximo de 255 caracteres
Usa alocação de memória estática
VARCHAR
Comprimento variável
A quantidade de espaço ocupado varia: um ou dois bytes
+ dados
Pode conter um máximo de 65.535 caracteres
Usa alocação de memória dinâmica
Esse tipo de dados pode ser adequado se estivermos armazenando quantidades muito pequenas de texto, mas não se estivermos trabalhando com sistemas de grande escala ou mesmo se precisarmos lidar com alguns formulários de login. (Lembre-se, precisamos fazer o hash de nossas senhas para torná-las não legíveis para humanos- realmente queremos correr o risco de não poder armazená-las?)
Em poucas palavras, CHAR é um ajuste se estivermos presos ao espaço de armazenamento e não planejamos armazenar muitos dados dentro de nossa coluna.
Além disso, lembre-se de que a quantidade de espaço que esse tipo de dados ocupa no disco varia de 1 a 2 bytes — lembre-se disso ao projetar sistemas com conjuntos de dados maiores, mas fora isso, não se preocupe muito. Os discos rígidos e de estado sólido modernos não tornam isso um problema. O VARCHAR é usado principalmente para trabalhar com projetos de médio a grande porte e CHAR geralmente é usado apenas quando estamos limitados em tamanho ou nosso projeto é muito pequeno.