Quem desenvolve páginas web já deve ter passado por esse problema. Acentuação e caracteres ilegÃveis no código.
Os famosos charsets é quem controlam quais caracteres podem ou não ser exibido no código.
Acontece do programador arrumar todo código nas páginas, mas quando salva no banco de dados, surpresa! Muda tudo de novo, códigos ilegÃveis, parece um problema sem fim.
A boa notÃcia é que é possÃvel controlar também no MySQL o tipo de charset a ser utilizado nas consultas.
mysql> SELECT CHARSET('abc');
-> 'latin1'
mysql> SELECT CHARSET(CONVERT('abc' USING utf8));
-> 'utf8'
mysql> SELECT CHARSET(USER());
-> 'utf8'
Usando a palavra CHARSET antes de definir a coluna, você obtém o tipo de charset que aquela coluna armazena seus dados.
Se estiver em um formato UTF8 e você gostaria que fosse LATIN1, basta fazer a conversão como mostrado acima, usado a função CONVERT( nome_da_coluna, USING tipo_charset).
Com isso é possÃvel ler os dados da tabela e jogar na página os resultados sem se preocupar com a compatibilidade dos caracteres especiais (acentuações) do código.
Era isso, sucesso!
Loading...
Muito boa essa dica, foi útil pra mim, pois as tabelas do meu DB são UTF8, mas meu era BD LATIN1 (agora já descobri como alterar
) e quando concatenei alguns dados deu problema nos acentos, então utilizando essa função CONVERT() foi resolvido =D
Alias, muito legal seu blog, já assinei o feeds!!! xD
[]s