O que é Collation de uma Base de dados, como alterar?

Existem configurações para conjuntos de caracteres e Collations (colações) em quatro níveis: servidor, banco de dados, tabela e conexão. 

Collation (Colação) nada mais é que a codificação de caracteres existente no Banco de Dados.
 
Quando você realiza a migração do conteúdo de um banco de dados, algumas vezes, pode haver conflitos no collation do banco migrado. 
 
O resultado deste conflito é a ausência de caracteres especiais quando informações são consultadas no banco.
 
Por exemplo: Você cadastrou a palavra ‘Chapéu’ no seu banco de dados, mas quando a programação do seu site busca este item, retorna o resultado ‘Chap?u’.
 
Ou seja, os caracteres com acentuação como (é, ã, õ, etc.) são substituídos pelo sinal ‘?’ (interrogação).
 
 
Abaixo segue um exemplo de como alterar uma colação de uma base MYSQL com a ferramenta phpMyAdmin disponível no Painel do Cliente.
 
 
1) Alterar a colação da base de dados:
Clique em ‘banco de dados’ e em seguida, no nome do banco de dados;
Localize e clique na aba ‘Operações’;
Em ‘Colação’, selecione o desejado;
Clique em ‘Executar’.
 
 
2) Alterar a colação da tabela:
Em ‘criar tabela’ insira o nome da tabela (Ex: produtos);
Em seguida localize e clique na aba ‘Operações’;
Nesta tela, localize ‘Opções da tabela’ > ‘Colação’;
Altere para a colação desejada;
Clique em ‘Executar’.
 
 
3) Alterar a colação do campo de uma tabela:
Clique no nome da tabela (Ex: cliente);
Localize o campo desejado;
Clique em ‘Editar’ identificado com o ícone de um ‘Lápis’;
Verifique e altere o campo ‘colação’ como desejar;
Clique em ‘Executar’.
 
 
Para desenvolvedores com um conhecimento avançado, disponibilizamos alguns exemplos de comandos SQL a serem executadas através do phpMyAdmin.
 
4) Alterar o collation da base de dados:
ALTER DATABASE ‘base-de-dados’ DEFAULT CHARACTER SET charset COLLATE collation;
 
Ex:
ALTER DATABASE `base_de_dados` DEFAULT CHARACTER SET latin1 COLLATE latin1_general_ci; 
ALTER DATABASE `base_de_dados` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
 
 
5) Alterar o collation da tabela:
ALTER TABLE ‘tabela’ DEFAULT CHARACTER SET charset COLLATE collation;
 
Ex:
ALTER TABLE `produtos` DEFAULT CHARACTER SET latin1 COLLATE latin1_general_ci; 
ALTER TABLE `clientes` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
 
 
6) Alterar o collation do campo de uma tabela:
ALTER TABLE tabela CHANGE campo_nomeatual campo_novonome tipo(tamanho) CHARACTER SET encoding COLLATE collation;
 
Ex: 
ALTER TABLE `produtos` CHANGE `nome` `nome` TEXT CHARACTER SET latin1 COLLATE latin1_general_ci; 
ALTER TABLE `clientes` CHANGE `nome` `nome` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_general_ci;
Essa resposta te ajudou?
Sim
Não

Agradecemos o seu Feedback!

Siga nossos perfis nas redes sociais para ficar por dentro de dicas para ter um negócio de sucesso, acompanhar eventos e muito mais.