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

Quando usar TEXT no mysql em vez de VARCHAR


Um longo VARCHAR é armazenado da mesma maneira que um TEXT /BLOB campo em InnoDB .

fonte

A menos que você precise indexar essas colunas (nesse caso VARCHAR é muito mais rápido) não há razão para usar VARCHAR sobre TEXT para campos longos - existem algumas otimizações específicas do mecanismo em MySQL para ajustar a recuperação de dados de acordo com o comprimento, e você deve usar o tipo de coluna correto para tirar proveito disso.

Caso você esteja usando MyISAM uma discussão aprofundada sobre o tema está aqui .

TEXT e BLOB são armazenados fora da mesa com a mesa tendo apenas um ponteiro para o local do armazenamento real.

VARCHAR é armazenado em linha com a tabela. VARCHAR é mais rápido quando o tamanho é razoável.

De acordo com este teste , VARCHAR é cerca de três vezes mais rápido que o texto.