Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Junior PQD

Converter dados ja inseridos mysql acentuação

Recommended Posts

Tenho uma BD com milhares de dados inseridos e com problemas na acentuação.

 

na BD fica cariaçica e o certo seria cariaçica.

 

quando vou exibir no php aparece normal utilizando utf-8 como charset o problema que agora estou arrumando essa aplicação e para melhor manutenção na BD precisaria que na bd aparecece normalmente os acentos e na exibição tambem.

 

quando mudo direto na bade para cariaçica quando vou ver no sistema ele fica cariaçica

 

ja tentei varias formas qu li aki no forum

ALTER DATABASE meu_banco_novo CHARACTER SET utf8 COLLATE utf8_general_ci;;

 

e mesmo assim os dados continuam com erros nos acentos.

 

queria uma forma de exportar o banco e quando importar ja ficar tudo corrigido.

 

ou algum script para rodar e corrigir o conteúdo do banco

Compartilhar este post


Link para o post
Compartilhar em outros sites

é pq agora vou fazer uma nova versão do sistema e rodar em local, ai que vem o problema no ssistema antigo eu usava as paginas como utf8 e o banco esta em latin1 então esses dados são inseridos com essa codificação no base trocando as acentuações.

 

ai quando eu exporto do sistema antigo a base e restauro no novo banco ela fica da mesma forma com esses textos errados e ao exibir na nova aplicação ela exibe os textos codificados.

 

queria uma forma de alterar todos os dados da base substituindo os caracteres codificados para normal (á é ó ç) e etc... para que seja exibido corretamente na aplicação.

 

ja tentei exportar como iso e importar como utf8 e vice e versa, criar nova base em latin1 e nada da certo.

 

preciso corrigir os textos que estão nas tabelas para que seja mais facil de dar a manutenção no sistema, uma busca por exemplo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver da seguinte forma

 

exportei a base de dados com o charset padrão mesmo no phpmyadmin

 

criei uma base nova com o charset utf8_general_ci

 

fiz a importaçao do arquivo sql

 

e executei as seguintes alteraçoes em todas as tabelas

 

ALTER DATABASE `nome_da_base` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

 

ALTER TABLE `nome_da_tabela` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; (executar esse comendo para cada tabela)

 

depois mudar os campos das tabelas que estão com problema da seguinte forma

 

ALTER TABLE tabela CHANGE campo campo BLOB;
ALTER TABLE tabela CHANGE campo campo TEXT CHARACTER SET utf8
essas duas linhas em cada campo que estiver com problemas de acentuação
no meu caso são apenas 3 tabelas com 2 campos cada então fiz manual, mais quem tem habilidade ai para criar um script para alterar todos os campos seria legal, e depois compartilhar com a galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.