Paradox para MySQL

Delphi

05/01/2013

Bom dia caros colegas,

Preciso da ajuda de vcs.
Comecei meus trabalhos em Delphi com o Paradox como banco de dados e agora comecei a migrar todos os meus sistemas para o MySQL. E num sistema de um determinado cliente encontrei um problema. Este cliente não se lembrou de ignorar acentos e cedilhas nos seus cadastros... e agora qdo faço a conversão de Paradox para MySQL, os registros que apresentam acentos e cedilhas ficam em branco.
Já fiz algumas tentativas como por exemplo, levar para o Excel, para o bloco de notas e depois levar para o MySQL mas encontro problemas qto aos tipos de dados, principalmente qdo se trata de datas.
Então, quero saber se alguém sabe como posso fazer para percorrer todo as tabelas do meu banco de dados Paradox em buscas dos acentos e cedilhas e troca-los por caracteres sem acentos e sem cedilhas.
Ou alguma aplicação que faça a conversão sem perda de dados.

Estou usando o Navicat 2005 para fazer a conversão. Talvez possa ser uma falha do próprio Navicat então, estou aberto a sugestões.

Um forte abraço a todos, um 2013 repleto, abarrotado, transbordante mesmo de novos negócios e novas tecnologias (realizações). ;)
Aloisio Santos

Aloisio Santos

Curtidas 0

Respostas

Deivison Melo

Deivison Melo

05/01/2013

Percorra toda a tabela usando uma função para remoção de acentos e grave essas informações já sem os acentos em outra tabela. então depois vc vai e exporta...

segue abaixo função para remoção de acentos:


function TiraAcentos(Texto: string): string;
var
Contar, Posicao: integer;
Acentos, TiraAcentos: string;
begin

Acentos := 'áäàãâÁÄÀÃÂéëèêÉËÈÊíïìîÍÏÌÎóöòõôÓÖÒÕÔúüùûÚÜÙÛçÇ+'; //Acrecentei um sinal de + e troque por um espaço em branco com observado na mesma função
TiraAcentos := 'aaaaaAAAAAeeeeEEEEiiiiIIIIoooooOOOOOuuuuUUUUcC ';
Result := '';

for Contar := 1 to Length(Texto) do begin

Posicao := Pos(Copy(Texto, Contar, 1), Acentos);
if Posicao = 0 then
Result := Result + Copy(Texto, Contar, 1)
else
Result := Result + Copy(TiraAcentos, Posicao, 1);
end;
end;
GOSTEI 0
POSTAR