PDA

Ver la Versión Completa : Problemas con set de caracteres de DB2


rolandoj
27-06-2010, 04:53:33
Hola a todos,

Estamos adecuando una aplicación para que también soporte DB2 y tenemos problemas con el tipo de datos VARCHAR. El asunto es el siguiente:

Nuestros datos están en español. En nuestra base de datos original, cada símbolo alfanumérico, incluyendo letras mayúsculas y minúsculas tildadas, la ñ, etc, ocupan un solo caracter; pero, al parecer, cuando pasamos a DB2, los símbolo propios del español, como las letras tildadas, están ocupando 2 caracteres.

Eso implica que cuando un campo VARCHAR está llenó y al menos hay una letra tildada, al pasar a DB2, DB2 lo rechaza.

Hasta donde he averiguado, DB2 usa Unicode UTF-8, el cual emplea símbolos de longitud variable. Lo que supongo es que DB2 está identificando bien el set de caracteres original; pero, al almacenar los valores, los está convirtiendo a UTF-8; por ello, las letras tildadas, están siendo tratadas con más de un caracter.

Según he leído se supone que DB2 tenía el limitante de UTF-8 hasta la versión 8; pero, también se supone que ya puede cambiarse ese sistena. Las preguntas son entonces:

1. Soporta ISO8859_1 ?
2. Si no lo soporta, cual de los que soporte sería el más aproximado ?
3. Como se cambia ese set de caracteres de defaul ?

Agradezco cualquier ayuda

rolandoj
25-07-2010, 19:26:06
Hola a todos,

Ante todo, gracias a suppliers020 por el interés; pero, no he podido leer el mensaje porque en todos los equipos donde he probado se muestran caracteres no hispanos. Al parecer, hasta en el mensaje está molestando el tema de los caracteres.

El problema logramos solucionarlo creando de nuevo la Base de Datos.

Hasta donde averiguamos, el set de caracteres se define exclusivamente en la creación de la Base de Datos (Estamos con DB2 v 9.7), así que tocó crearla de nuevo y especificar el correcto (ISO-8859-1) en el paso 3 (Región) del proceso de creación.

Sin embargo, ha aparecido otro problema de similar tenor. Pueden verlo aquí:

http://www.clubdelphi.com/foros/showthread.php?t=68958

Este otro problema si no lo he podido solucionar y el asunto está en un punto donde ya estoy seriamente preocupado respecto a la combinación dbExpress con DB2. No solo porque este error esta cerca de obligarnos a abandonar la posibilidar de usar DB2, ya que es inviable cambiar el dbExpress; sino porque en estos foros casi nadie parece trabajar con dbExpress y mucho menos con DB2.

Algo similar ocurre cuando uno hace busquedas por toda la Web. Dá la impresión de que el soporte en foros es muy escaso.