Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-08-2010
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Gracias por el apoyo

Cita:
Empezado por egostar Ver Mensaje
Vaya, pues que mal.

¿ Y no has utilizado otro componente a manera de verificar si realmente es el driver ?, tal ves usando ADO con el OLE Provider de DB2.

Yo me dí cuenta de que mi problema estaba en el driver porque lo comparé con IBX y todo funcionó bien.

Otra cosa que se me ocurre es si puedes cambiar el tipo de dato en DB2 de DECIMAL(18,2) a NUMERIC(18,2)

Digo, a estas alturas cualquier opción vale

saludos
Hola,

Gracias por el apoyo.

La verdad no he intentado con ADO. No lo manejo, y aún si funcionara con ADO me sería totalmente inviable migrar la aplicación a ADO. Ahora, si con ADO no funcionara, habría que pensar que la falla es más del cliente db2; pero, a efectos prácticos, sería la misma conclusión; o sea, tener que abandonar db2.

Respecto a cambiar de DECIMAL a NUMERIC; me pareció curioso y traté de cambiar en una tabla existente; pero, el centro de control no me muestra NUMERIC como un tipo de dato. Opté entonces por crear una tabla nueva directamente vía SQL: Ahí si me aceptó poner NUMERIC; pero, al consultar la definición de la tabla me muestra es DECIMAL.

Supongo que en db2. al ser sinónimo, optaron por usar solo la palabra DECIMAL.

Con tiempo prepararía la prueba que sugieres; pero, en vista de estos primeros resultados, creo que no vale la pena. Piensi que para db2, es idéntico; para ellos, la palabra NUMERIC es solo un sinónimo para reconocer sintaxis SQL. LA estructura interna y todas las consultas deben tener estructura única

Por cierto, con Firebird funciona muy bien, y esa sería mi solución. Es el que he usado en desarrollo. La verdad db2 brinda muchas posibilidades interesantes sobre Firebird y por eso lo queríamos para productivo; pero, con este problema ... !!!!!!!!!!!!!!!!!
Responder Con Cita
  #2  
Antiguo 06-08-2010
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.561
Poder: 25
egostar Va camino a la fama
Hola

Recién leo en tu primer post donde comentas que tienes un driver de db2, ADO te permite usarlos desde el ODBC. Si con eso no funciona como lo requieres Yo no invertiría mas tiempo y me voy a Firebird, que a decir verdad no le pide nada a ninguna base de datos.

saludos
Responder Con Cita
  #3  
Antiguo 06-08-2010
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Solo esperaré hasta el Lúnes

Cita:
Empezado por egostar Ver Mensaje
Hola

Recién leo en tu primer post donde comentas que tienes un driver de db2, ADO te permite usarlos desde el ODBC. Si con eso no funciona como lo requieres Yo no invertiría mas tiempo y me voy a Firebird, que a decir verdad no le pide nada a ninguna base de datos.

saludos
Hola,

La verdad es que terminar usando Firebird parece inevitable. Lo máximo que esperaré será hasta el Lúnes.

Respecto a ADO; como dije, en mi caso no aplica porque es una tecnología que nunca he usado; además la aplicación ya está hecha y es enorme. Sería inviable pensar siquiera en pasarla a ADO.

Lo peor de todo esto es que db2 se presentó como una propuesta clave para la solución final de implementación de los proveedores de hardware y software. El tener que abandonarlo me representa una enorme cantidad de problemas por fuera del tema técnico; especialmente, porque del lado de los proveedores todo ha estado muy bien.

De hecho, de lo poco que he conocido de db2 y de lo que miramos cuando se revisó la propuesta integral (db2 es free; pero, venía como elemento clave en una solución integral que involucra otra serie de elementos de hardware y software), tengo claro que posee características muy interesantes.
Responder Con Cita
  #4  
Antiguo 09-08-2010
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Solucionado !!

Hola,

A último minuto funcionó una prueba al azar !!. Es increíble que por un error tan simple estuvieramos a punto de cancelar el uso de DB2.

El caso es que en los archivos de incialización de dbExpress el parámetro Decimal Separator no estaba funcionando; pero, hoy se me ocurrió probar eliminando el espacio en blanco entre Decimal y Separator en el dbxConnections.Ini; y el asunto funcionó !!. dbEXpress entendió que db2 le enviaba los números usando como separador la coma y ya actuó bien.

Bueno, ciertamente habrá que probar a fondo; pero, al menos en las pruebas iniciales que estoy haciendo está trabajando bien.

Es el tipo de cosas que uno dice : Por qué no se me ocurrió antes ?. Bueno, en parte porque el tener parámetros separados por espacio en blanco es normal en los drivers dbExpress, y en parte, si había tenido alguna sospecha en ese sentido, incluso hice una prueba de escribir Decimal_Separator , o sea usando _ como separador entre ellos porque había visto que ponían User_Name y no User Name.

Habrá que ver si lo mismo aplica para otros parámetros, caso DB2 TransIsolation.

Agradezco a todos la ayuda brindada, y ya lo saben: Al menos la línea :

Decimal Separator=,

Debe colocarse como :

DecimalSeparator=,

Cuando tú cliente db2 esté usando coma en lugar de punto.

Es pués un error simple en dbExpress; pero, db2 también tiene su problema porque no pudimos encontrar forma de cambiarle desde afuera el separador decimal.
Responder Con Cita
  #5  
Antiguo 10-08-2010
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.561
Poder: 25
egostar Va camino a la fama
Pues que bueno que ya funcionó y resolviste tu problema y lo más importante es que tu propuesta de negocio ya podrá continuar como lo planeaste.

saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Falla en dbExpress de Delphi 2007 con Firebird para campos BCD rolandoj Conexión con bases de datos 4 26-03-2010 16:08:58
Driver PostgreSQL para dbExpress gatosoft PostgreSQL 2 09-01-2010 03:36:20
Driver dbExpress para DB2 jcporras DB2 1 02-10-2008 14:25:52
Que driver recomiendan para dbExpress con Oracle10g ? rolandoj Conexión con bases de datos 0 23-05-2008 17:58:32
D2006 + IB 7.5 / Campos DECIMAL(5,2) Valores absurdos gluglu Conexión con bases de datos 0 19-01-2006 14:56:05


La franja horaria es GMT +2. Ahora son las 06:05:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi