Diferença entre Char e Varchar

Char vs Varchar
 

Char e Varchar são tipos de dados de caracteres comumente usados ​​no sistema de banco de dados que parecem semelhantes, embora existam diferenças entre eles quando se trata de requisitos de armazenamento. No design do banco de dados, existem muitos tipos de dados usados. Fora deles, os tipos de dados de caracteres ganham um lugar mais proeminente, pois são usados ​​para armazenar muitas informações em comparação com números. Os tipos de dados de caracteres são usados ​​para armazenar caracteres ou dados alfanuméricos em cadeias. O tipo de conjunto de caracteres do banco de dados é definido ao criar o banco de dados. Novamente, desses tipos de dados de caracteres, Char e Varchar são os mais usados. Este artigo explica o que são esses dois tipos de dados, char e varchar, e a diferença entre eles..

O que é Char?

A definição ISO de char é uma personagem e o tipo de dados char é costumava armazenar um personagem. Char (n) pode armazenar n tamanho fixo de caracteres. O número máximo de caracteres que um caractere (n) pode conter é de 255 caracteres e o comprimento de uma string deve ser de 1 a 8000. O caractere é cinquenta por cento mais rápido que o varchar e, portanto, podemos obter um desempenho melhor quando trabalhamos com Caracteres. Char usa alocação de memória estática ao armazenar dados. Quando queremos armazenar strings com um comprimento fixo conhecido, é melhor usar o char. Como exemplo, ao armazenar 'Sim' e 'Não' como 'Y' e 'N', podemos usar o tipo de dados char. E também ao armazenar o número do cartão de identidade nacional de uma pessoa com dez caracteres, podemos usar o tipo de dados como char (10).

O que é Varchar?

Como o nome sugere, varchar é chamado de caractere variável. Varchar é usado para armazenar dados alfanuméricos com comprimentos variáveis. O número máximo de caracteres que esse tipo de dados pode conter é de 4.000 caracteres e o tamanho máximo de armazenamento é de 2 GB. O tamanho do armazenamento do varchar é o comprimento real dos dados mais dois bytes. O Varchar é mais lento que o char e usa alocação dinâmica de memória ao armazenar dados. Podemos usar o varchar ao armazenar dados como nomes, endereços, descrições, etc. Não apenas as strings, mas também os tipos que não são strings, como os tipos de data, "12 de março de 2015", "12/03/2015" também podem ser armazenados em o tipo de dados varchar.

Qual é a diferença entre Char e Varchar?

• Embora char e varchar sejam campos de dados de caracteres, char é um campo de dados de comprimento fixo e varchar é um campo de dados de tamanho variável.

• Char pode armazenar apenas caracteres de string não Unicode de tamanho fixo, mas varchar pode armazenar tamanhos variáveis ​​de strings.

• Char é melhor que varchar para dados que mudam frequentemente. Isso ocorre porque a linha de dados de comprimento fixo não é propensa a fragmentação.

• Char ocupará apenas o espaço fixo definido ao declarar a variável. Mas varchar ocupará o espaço com base nos dados inseridos e também ocupará 1 ou 2 bytes como prefixo de comprimento.

• Se os dados tiverem menos de 255 caracteres, 1 byte será alocado e se os dados tiverem mais de 255 caracteres, 2 bytes serão reservados. Se usarmos um char para armazenar um sinalizador de 'Y' e 'N', ele usará um byte para armazenar, mas quando usarmos varchar, serão necessários dois bytes para armazenar o sinalizador, incluindo um byte extra como prefixo de comprimento.

Resumo:

Char vs Varchar

Char e varchar são os tipos de dados de caracteres mais usados ​​disponíveis nos bancos de dados. Char é usado para armazenar uma string com um comprimento fixo, enquanto varchar é usado para armazenar strings com um comprimento variável. Para obter um melhor desempenho dos dados, é mais importante escolher os tipos de dados corretos para os campos das tabelas em seu banco de dados. É mais conveniente usar os menores tipos de dados que podem armazenar os dados corretamente, porque eles ocupam menos espaço da memória.

Cortesia de imagens: Varchar via Wikicommons (domínio público)