[firebase-br] ISO8859-1 to UTF-8

Gladiston Santana gladiston em vidy.com.br
Qui Abr 7 08:59:15 -03 2016


Um bd que foi gravado num charset sendo acessado através de uma conexão
identificada com charset diferente haverá transliteração, os 'bytescodes'
de um chraset pode referir-se a um caractere diferente no outro charset.
Já era assim há mais de 20 anos atrás quando comecei a trabalhar com banco
de dados SQL e mesmo os flattables como Paradox (Piradox para alguns) era
complicado visualizar dados ANSIINTL quando você identificava charset
diferentes.
Para diminuir esse problema, duas atitudes que eu conheço foram tomadas: a
tabela ascii é universal nos charsets e, segundo, um novo charset é criado
a partir de um outro, assim o novo tá pronto para receber o velho.
Quando várias tecnologias se misturam, o ideal é UTF e não pensar nisso,
mas se não for possível, cada tecnologia deve indicar o charset em que os
dados foram gravados e não como serão convertidos, quando diferentes poderá
ter problemas, em muitas webservices, o charset fica no XML e se ajusta
sozinho causando a impressão de que escolher o charset diferente não causa
problemas, mas se experimentar consumir dados JSON onde o charset não tá
identificado, espera-se UTF ou ASCII, gerar dados JSON noutro formato é
causar erros para quem consumir o webservice.

Muito obrigado por agigantar o tópico e tenho certeza que os leitores se
beneficiaram(ão) dessa discussão.



Mais detalhes sobre a lista de discussão lista