O sistema de gerenciamento de banco de dados Mysql, a partir da versão 4.1, suporta o trabalho com codificações. Os principais problemas com eles surgem ao conectar um banco de dados com Php. Nesse caso, a codificação do conteúdo da base e a conexão devem corresponder.
Instruções
Passo 1
Observe que uma causa comum de problemas com o Mysql é que a codificação padrão para bancos de dados é definida como latin1. A maioria dos clientes conectados também são configurados para isso, você insere dados e visualiza os resultados usando-os também. Embora essa codificação exiba corretamente o alfabeto cirílico, os códigos da tabela de símbolos nela não correspondem aos caracteres cirílicos reais. Portanto, pesquisar e classificar dados pode produzir resultados completamente imprevisíveis.
Passo 2
Altere a codificação do banco de dados para uma que exiba corretamente caracteres cirílicos, por exemplo, utf-8 ou cp1251. Para fazer isso, converta os dados da codificação Latin1 para cp1251. Não use a conversão de dados simples, pois os códigos de caracteres estão incorretos. Portanto, você precisa se livrar de sua ligação de codificação. Para fazer isso, converta os dados e o tipo de caractere em dados binários. Use a consulta Alterar tabela "Digite o nome da tabela" t1 alterar c1 c1 blob.
etapa 3
Execute uma consulta para alterar a codificação do banco de dados Mysql, para isso use o seguinte exemplo: Alter table "Digite o nome da tabela" t1 change c1 c1 text chatacter set "Digite o nome da codificação desejada, por exemplo, cp1251". Nem um único byte de dados é alterado fisicamente, mas a regra de formação de caracteres muda. Posteriormente, para alterar a codificação do banco de dados, você pode usar uma consulta de conversão de dados simples.
Passo 4
Observe que ao alterar as codificações da tabela em um campo que contém índices, você deve excluí-los e recriá-los, ou seja, reconstruir em todas as tabelas do banco de dados. Ao mudar para a codificação, certifique-se de que os clientes visuais suportem Unicode. Por exemplo, o cliente SQLyog exibe incorretamente o conteúdo das tabelas que armazenam dados na codificação utf-8.