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 07-08-2015
Avatar de elaguna
elaguna elaguna is offline
Miembro
 
Registrado: abr 2009
Ubicación: México
Posts: 51
Poder: 16
elaguna Va por buen camino
Conectar FireDAC en Delphi XE8 con Postgres

Qué tal, saludos.

Pues volviendo al consumismo con Embarcadero, adquirimos la fabulosa nueva versión de RAD, XE8, wow !!!

Y aprovechando que nos acaban de solicitar que una de nuestras aplicaciones sea multiplataforma/multidispositivos, pues queremos utilizar la nueva versión. Lo último que utilizamos es XE.

En la aplicación utilizamos PostgreSQL y Zeos, sin ningún problema, pero al tratar de migrar a la nueva versión, todavía no hay una versión de Zeos para XE8, entonces como sugieren en este hilo http://www.clubdelphi.com/foros/showthread.php?t=85795&highlight=firedac+postgres, queremos usar FireDAC.

Es ahí en donde tenemos el problema, nos pide la librería libpq.dll y demás librerías (hasta ahí todo normal), Postgres está instalado y funciona correctamente, buscamos en la ayuda de Embarcadero para este tema y seguimos las indicaciones: http://docwiki.embarcadero.com/RADStudio/XE8/en/Connect_to_PostgreSQL_%28FireDAC%29.

Solicitamos el apoyo de Embarcadero y nos mandaron exactamente la misma información.

El error que nos manda es

Cita:
[FireDAC][Phys][PGSQL]-314. Cannot load vendor library [libpq.dll]. No se puede encontrar el módulo especificado. Hint: check it is in the PATH directories or application EXE directories, and has x86 bitness.
Siguiendo las indicaciones y modificando el archivo FDDrivers.ini agrego las líneas

Cita:
[PG]
VendorLib=C:\Program Files (x86)\PostgreSQL\9.4\lib\libpq.dll
Pero el error es el mismo:

Cita:
[FireDAC][Phys][PGSQL]-314. Cannot load vendor library [C:\Program Files (x86)\PostgreSQL\9.4\lib\libpq.dll]. No se puede encontrar el módulo especificado. Hint: check it is in the PATH directories or application EXE directories, and has x86 bitness.
Todo es x86 (DB, XE8, y dll).

¿Alguien ha tratado de utilizar FireDAC con esta DB y cómo lo han solucionado?

Gracias a todos.
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda)
Responder Con Cita
  #2  
Antiguo 12-08-2015
Avatar de elaguna
elaguna elaguna is offline
Miembro
 
Registrado: abr 2009
Ubicación: México
Posts: 51
Poder: 16
elaguna Va por buen camino
Pues ya pude establecer la conexión, no sé si era el procedimiento correcto, pero funcionó.

La librería de cliente que por default trae Postgres, no funciona y no hubo forma de hacer que delphi la reconociera, lo intenté en un proyecto nuevo y lo mismo. La solución fué utilizar la librería libpq74.dll de los componentes Zeos que habíamos estado utilizando, pero no en el archivo de configuración (sigue mostrando el error), sino por medio del componente TFDPhysPgDriverLink.

Espero que le sirva a alguien que se encuentre con el mismo problema.

Saludos a todos.
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda)
Responder Con Cita
  #3  
Antiguo 13-08-2015
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 833
Poder: 21
gatosoft Va camino a la fama
Hola elaguna,

Pues si han podido invertir en el XE8, no estaría de mas que hicieran un esfuerzo mas y le apostaran a UniDAC de la empresa DevArt.

En mi concepto son muy buenos componentes y se comunican diretamente con PostgreSQL. sin los enredos tipicos que tiene la famosa Libpq.dll

De hecho yo los adquirí para poder trabajar con postgreSQL, y poder utilizar multiples motores en mis aplicaciones.

La verdad no tienen nada que envidiarle a FireDAC y son muy estables.

Cabe decir que adquirí UniDac antes que Embarcadero adquiriera FireDAC, pero aun asi no los cambio. Te los recomiendo.
Responder Con Cita
  #4  
Antiguo 20-08-2015
Avatar de elaguna
elaguna elaguna is offline
Miembro
 
Registrado: abr 2009
Ubicación: México
Posts: 51
Poder: 16
elaguna Va por buen camino
Qué tal gatosoft.

Estoy revisando la información en la página de DevArt y parece prometedor, ojalá no nos pase lo mismo que con los TMS component después de adquirirlos, resulta que en el soporte nos vamos enterando que algunos componentes y/o características no son completamente multidispositivos, eso pasa por no leer las letras pequeñas.

Aunque los UniDAC no son realmente caros, lo vamos a considerar antes de que se siga disparando el precio del dólar aquí en México.

Gracias por tu sugerencia, ahí les comento cómo nos va.
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda)

Última edición por elaguna fecha: 20-08-2015 a las 19:04:07.
Responder Con Cita
  #5  
Antiguo 21-08-2015
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 833
Poder: 21
gatosoft Va camino a la fama
Pues Devart me ha parecido muy buena empresa. Con respecto a TMS, te cuento que también los adquirí y tabién he sentido que no todo es lo que parece... hay componentes en los que he comenzado a trabajar para despues tener que abandonar. En general, creo que a la empresa le hace falta enfocarse en mejorar muchos aspectos de sus productos.... pero no se, tal vez sea un poco apresurado, y me haga falta explorarlos mas.

Saludos
Responder Con Cita
  #6  
Antiguo 25-08-2015
Avatar de elaguna
elaguna elaguna is offline
Miembro
 
Registrado: abr 2009
Ubicación: México
Posts: 51
Poder: 16
elaguna Va por buen camino
Completamente de acuerdo.

Estoy probando los UniDAC y son una maravilla , nada de andar correteando dll's, cambié mi conexión y los querys; y todo bien sin teclear nada.

Como los parámetros de configuración los pusimos por código, no hubo más que quitar "éstos" y poner "aquellos" y todo funcionó perfecto. . Creo que sí los vamos a adquirir.

Aunque soy partidario del software libre (mi corazón está partido entre Fedora y Ubuntu), mi estómago (y el de mis hijos) me hace trabajar en Windows y recientemente en OSX, éste último genial hasta el momento.

Referente a TMS, lo que me llama la atención es que desarrollan componentes que, en mi opinión, deberían de ser mejores, con esto me refiero a ampliar y en cierto modo mejorar, las características de los componentes ancestros. Sin embargo, lo que he notado, es que le quitan propiedades o métodos fundamentales, para agregarle otros, que si bien hace que se vea todo muy bonito, en ocasiones te hacen dar muchas vueltas para llegar a algo que anteriormente se hacía en 4 teclazos y al final acabas por abandonarlos, ya que si alguno te da trabajo y lo tienes que quitar, y si el resto deben de mantener el mismo aspecto visual, tienes que cambiar todos y, en el mejor de los casos, cambiar algunas decenas de líneas de código.

Pero eso es otra historia.

Muchas gracias por tus sugerencias.

Saludos cordiales.
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda)
Responder Con Cita
  #7  
Antiguo 26-08-2015
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 833
Poder: 21
gatosoft Va camino a la fama
Yo he trabajado con PostgreSQL y Con Oracle estos componentes.. Con Oracle es aun mejor pues no requiere tener instalado el cliente oracle, que generalmente es bastante problemático(trabaja directamente por TCP/IP)

Del paquete Unidac, te recomiendo el componente TVirtualTable... es un sueño de componente, con este hago rápidamente implementaciones o demos con datos ficticios (sin apuntar a un motor de DB)

Tambien lo utilizo con DB temporal para guardar configuraciones de parámetros en memoria y para intercambiar información de via Datasnap...


Por otro lado, siendo justos, debo reconocer por el lado de TMS, que me ha ido bien con los componente TAdvFlexcel, el TPlaner el TAdvStringGrid.

Estoy probando el paquete de Plugins y creo que los voy a utilizar.

Estoy de acuerdo que manejarlos a veces implica un poco mas de esfuerzo, pero lo he resuelto creando clases basadas en estos componentes para agilizar las operaciones que utiulizo mas frecuentemente.

Hay otros componentes de TMS con los que estaba esperanzado, pero no los he podido desempantanar... como los TDBAdvGrid, El módulo de seguridad, Aurelius (Si los adquirí pero no los he podido poner en uso)

Saludo,
Responder Con Cita
  #8  
Antiguo 26-08-2015
ccgiraldo2 ccgiraldo2 is offline
Registrado
NULL
 
Registrado: nov 2014
Posts: 2
Poder: 0
ccgiraldo2 Va por buen camino
Buenas tardes elaguna

Has tratando de instalar el Odbc de postgres?

Ya que utilizo FireDac con conexión a postgres y me funciona normal.
Responder Con Cita
  #9  
Antiguo 04-09-2015
Avatar de elaguna
elaguna elaguna is offline
Miembro
 
Registrado: abr 2009
Ubicación: México
Posts: 51
Poder: 16
elaguna Va por buen camino
Gracias por tu atención.

Cita:
Empezado por ccgiraldo2 Ver Mensaje
Buenas tardes elaguna

Has tratando de instalar el Odbc de postgres?
Si te refieres a instalar ODBC por la cuestión de las librerías, la respuesta es sí pero, como les comentaba, FireDac no se conecta y me manda los errores antes mencionados, sí se pudo conectar pero tuve que andar peregrinando con librerías de otro componente.

Si te refieres a utilizar ODBC para realizar la conexión, sí lo he utilizado hace ya varios años, la idea es ya no utilizar capas intermedias o las menos posibles, por esa misma razón anteriormente trabajábamos con Zeos.

Cita:
Empezado por ccgiraldo2 Ver Mensaje
Ya que utilizo FireDac con conexión a postgres y me funciona normal.
Esa es la cosa, ojalá me puedas dar un poco de orientación, en cómo lo solucionaste-configuraste.

Gracias
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda)
Responder Con Cita
  #10  
Antiguo 04-09-2015
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por gatosoft Ver Mensaje
Del paquete Unidac, te recomiendo el componente TVirtualTable... es un sueño de componente, con este hago rápidamente implementaciones o demos con datos ficticios (sin apuntar a un motor de DB)

Tambien lo utilizo con DB temporal para guardar configuraciones de parámetros en memoria y para intercambiar información de via Datasnap...
Hola gatosoft, un gusto como siempre. Me saltó una duda sobre esta parte de tu discurso. Desconozco el alcance de ese componente, pero te preguntaría ¿qué ventajas tiene sobre el estándar TClientDataSet?

Perdón por desviar un poco el tema. Un saludo.

Al González.
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
conectar firedac a cualquier mssql juank1971 Conexión con bases de datos 1 12-06-2015 22:56:58
Conectar remotamente usando FireDAC MAXIUM Firebird e Interbase 0 18-08-2014 20:36:29
Conectar Aplicación Web con Postgres PaulaGV Delphi para la web 0 08-10-2013 20:53:16
ayuda para conectar delphi con postgres pame PostgreSQL 2 19-09-2013 05:47:24
Conectar Postgres con Delphi 7 Maury Manosalva PostgreSQL 3 12-12-2006 17:10:37


La franja horaria es GMT +2. Ahora son las 14:58:43.


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