Kbase 70386: Suporte para caracteres Unicode com DataServer - parte I
Autor |
  Marco Aurelio Scheidt - Tecnologia |
Acesso |
  Público |
Publicação |
  19/03/2018 |
|
A forma mais comum de representação de caracteres é utilizar 1 byte para cada caractere. Desta forma, existem 28 = 256 representações de caracteres diferentes. O número de caracteres existentes nos vários idiomas e vários sistemas de escrita é certamente maior que 256, o que nos levou a criação de vários códigos de página para representação de diferentes conjuntos de caracteres.
O Unicode é um padrão que permite, de forma consistente, representar e manipular texto de quase todos os sistemas de escrita existentes. São utilizados de 1 a 4 bytes por caractere, dependendo da codificação utilizada e do caractere a ser representado.
A partir da versão 10.1C a Progress passou a suportar tipos de dados Unicode para os DataServers Oracle e SQL Server. Nas versões anteriores, a tentativa de acessar um dado Unicode gera um erro fatal, e a sessão do usuário é finalizada.
O SQL Server suporta caracteres Unicode desde a versão 7, com os tipos de dados NCHAR, NVARCHAR e NTEXT. A partir do SQL Server 2005, o tipo de dados NTEXT está disponível apenas para compatibilidade com versões anteriores. O novo tipo de dados NVARCHAR(MAX) é recomendado para armazenamento de CLOBs Unicode. O suporte Unicode no DataServer SQL Server exige SQL Server 2005 ou superior.
O Oracle introduziu na versão 9i os tipos de dados NCHAR, NVARCHAR2 e NCLOB, para armazenamento de dados Unicode, independente da configuração do banco de dados. O suporte Unicode no DataServer Oracle exige Oracle 9i ou superior.
Além das versões apresentadas, existem algumas configurações necessárias para poder utilizar Unicode com os DataServers. No próximo post veremos como realizar estas configurações.
Autor: Marcos Kirchner