Ir al contenido


Foto

¿Que componenetes usar para conectarse?


  • Por favor identifícate para responder
18 respuestas en este tema

#1 seoane

seoane

    Advanced Member

  • Administrador
  • 1.259 mensajes
  • LocationEspaña

Escrito 09 noviembre 2012 - 01:25

Leyendo un articulo sobre PostgreSQL, me ha surgido una duda ¿que componentes usar para conectarme desde delphi a una base de datos en PostgreSQL?. Luego le seguí dando vueltas al asunto y me volvió a surgir otra duda ¿que componentes usan los demás para acceder sus bases de datos? (sean cuales sean firebird, mysql, MSSQL, PostgreeSQL, etc...)

Yo solo he trabajado con MSSQL y mySQL, y para conectarme he utilizado ADO y ZEOS, pero tengo la duda de si habrá algo mejor o más rápido, al fin y al cabo soy un novato con las bases de datos.

Espero vuestras opiniones ! (sobre cualquier base de datos que uséis)

Saludos


  • 0

#2 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 09 noviembre 2012 - 01:33

Yo he usado BDE y Zeos (:s) para Firebird... para ambos casos le veo peros en la conexión, así que estoy evaluando el buscar otro conector  ^o|

ADO para MySQL y esta combinación me gusta bastante  (y)

Saludox ! :)
  • 0

#3 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 09 noviembre 2012 - 01:39

Hola amigo

Yo suelo conectarme a Firebird con IBX y con dbExpress, aunque dbExpress en las últimas versiones sólo puedes acceder desde la versión enterprise, con profesional uso IBX y me va muy bien.

A mi Zeos no me gusta, eso no quiere decir que sea malo, simplemente no me gustan :)

ADO sólo lo uso para conectarme a Excel.

Aún sigo usando BDE, para conctarme a Firebird y a Paradox, aunque ésta última sólo para dos programitas que tengo por ahí y que no han querido cambiar.

No trabajo con ningún otro motor de base de datos así que no puedo opinar más.

Saludos


  • 0

#4 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.137 mensajes

Escrito 09 noviembre 2012 - 03:02

Yo uso los dbExpress para conectarme a Firebird, Ado para conectarme a las bases de de Microsoft (Access y MSSQL Server) y BDE para conectarme a unas bases de datos paradox (de unas viejas aplicaciones).

Saludos
  • 0

#5 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 09 noviembre 2012 - 03:25

Pues.... yo he usado BDE, DbExpress,Zeos y ADO de la siguiente manera:

BDE: PARADOX, Interbase;
DbExpress: Interbase,Mysql
Zeos: Mysql
ADO: FoxPro, Dbase,Access,MsSql,Mysql,DB2 Iseries,PostgreSql,Oracle,
para leer archivos  he usado ado también con:
XML,CSV,XLS

De todas las tecnologias de conexión yo me he quedado con ADO por su universalidad, su velocidad y su integración nativa con múltiples motores gracias a la Capa OLEDb y su conectividad estándar a través de la capa ODBC.



  • 0

#6 fredycc

fredycc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 874 mensajes
  • LocationOaxaca, México

Escrito 09 noviembre 2012 - 03:46

¿que componentes usan los demás para acceder sus bases de datos? (sean cuales sean firebird, mysql, MSSQL, PostgreeSQL, etc...)


Yo he usado Zeos de momento en su última versión 7, en Delphi y Lazarus 32 y 64 bits, para SQLite, Firebird, MSSQLServer, Interbase.

En mi caso uso Zeos por la necesidad de crear la misma conexión en plataformas distintas sea Windows, Linux o Mac.

.. pero tengo la duda de si habrá algo mejor o más rápido..


Hasta donde sé de pruebas a Zeos 6 es muy lento en comparación a otros componentes pero si aprovechas al máximo las bondades de estos RDBMS (SP's, triggers, functions, indices) creo ayudaría en mucho al rendimiento de tu sistema.

Saludos
  • 0

#7 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 09 noviembre 2012 - 04:09


Hasta donde sé de pruebas a Zeos 6 es muy lento en comparación a otros componentes pero si aprovechas al máximo las bondades de estos RDBMS (SP's, triggers, functions, indices) creo ayudaría en mucho al rendimiento de tu sistema.

Saludos


Hola amigo... me interesó mucho esto que comentas... Hasta hace un par de años para mysql usaba zeos, pero dejé de usarlo cuando tuve que ejecutar procedimientos almacenados con parámetros de salida, pues en aquel entonces el único que lo soportaba era ADO.  Con esta versión de zeos ya es posible?
  • 0

#8 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 09 noviembre 2012 - 04:10

De todas las tecnologias de conexión yo me he quedado con ADO por su universalidad, su velocidad y su integración nativa con múltiples motores gracias a la Capa OLEDb y su conectividad estándar a través de la capa ODBC.


A mi me parece, desde mi limitado punto de vista, que usar una capa más de conexión (ODBC) hace más lentas las transacciones. Bueno, eso creo yo. :p

Saludos
  • 0

#9 fredycc

fredycc

    Advanced Member

  • Moderadores
  • PipPipPip
  • 874 mensajes
  • LocationOaxaca, México

Escrito 09 noviembre 2012 - 04:20

Hasta hace un par de años para mysql usaba zeos, pero dejé de usarlo cuando tuve que ejecutar procedimientos almacenados con parámetros de salida, pues en aquel entonces el único que lo soportaba era ADO.  Con esta versión de zeos ya es posible?


Que tal poli, para cuestiones Sp's lo he usado solo con firebird y MSSQLServer, sería bueno saber para que versión de MySQL te interesa, podríamos investigar, no soy partidario de MySQL, pero no se quita nada con intentar saber si funciona  :).

Saludos
  • 0

#10 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 09 noviembre 2012 - 04:53

Hola
Que yo sepa para conectarse a PostgreSQL la mejor opción es ZEOS, aunque no me guste.
Saludos
  • 0

#11 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 09 noviembre 2012 - 04:57


A mi me parece, desde mi limitado punto de vista, que usar una capa más de conexión (ODBC) hace más lentas las transacciones. Bueno, eso creo yo. :p

Saludos


Claro amigo, se considera por lo general que ODBC es lento y esto en muchos casos es verdad pero no es generarl.

No debemos olvidar que ODBC es un estándar de acceso a datos que establece de manera rigurosa los métodos de acceso a una base de datos.  Existe entonces un driver propuesto por microsoft para el acceso generalizado al que muchos fabricantes ofrecen compatibilidad, este es lento por lo general, pero existen también los drivers ODBC proporcionados por el fabricante que son en lo general tan rápidos como OLEDB claro, con las limitantes que la capa ODBC pueda tener.

Tampoco perdamos de vista amigo mio que ODBC es un estándar que se usa también en línux y del que se deriva otro conector muy potente: JBDC.

aquí para saber más del tema

http://es.wikipedia....se_Connectivity

  • 0

#12 seoane

seoane

    Advanced Member

  • Administrador
  • 1.259 mensajes
  • LocationEspaña

Escrito 09 noviembre 2012 - 06:32

Pues yo deje de usar ADO para conectarme a mySQL, y pase a usar ZEOS porque pensaba que era mas rápido ... pero supongo que, después de lo leído aquí,  tendré que reconsiderarlo  ^o|

Sigo sin ver nada claro este tema, voy tener que seguir investigando ...
  • 0

#13 Rolphy Reyes

Rolphy Reyes

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.092 mensajes
  • LocationRepública Dominicana

Escrito 12 noviembre 2012 - 07:04

Saludos.

En mis inicios de programación utilice el BDE para conexiones a Paradox e Interbase; luego cuando salio IBX para delphi lo comencé a utilizar para Interbase 6.

Después de unos años utilice ADO para conexiones con MS-SQL, más tarde con el "boom" de DbExpress lo utilice en varios proyectos para conexiones con MS-SQL; de ahí en adelante pensé que sería los únicos componentes que utilizaría para conexiones a todas las BD pero conociendo sus limitaciones y bugs, además de tener que esperar que tiren un parcho o tener necesariamente que migrar de versiones de Delphi para obtener un fix o una mejora desistí de los mismos.

Con la salida de Firebird usaba la conexión con FIBPlus bastante bien que es trabajar con dichos componentes.

En el trabajo anterior usábamos BDE para conexiones con Firebird, Oracle y MS-SQL.  En el trabajo actual utilizamos ADO para conexiones con MS-SQL con miras a soportar también PostgreSQL.

Ahora bien los componentes de uso genéricos osea de conexiones genéricas (BDE, ADO y DbExpress) tienen un gran limitante en común, al menos para mi lo es, y es lo relacionado a la persistencia entre BD me explico, si estas conectado a MS-SQL y usas la persistencia el componente reconocerá los campos con un tipo de datos X, si luego deseas conectarte a Firebird digamos entonces esos campos persistentes son compatibles con Firebird.

Dada esa situación decidí utilizar AnyDAC, para mis desarrollos personales, que me garantizan el uso de la persistencia entre BD sin problemas algunos y para PostgreSQL me parecen que son los únicos que hacen uso del driver nativo lo cual es una super ventaja.

:smiley:
  • 0

#14 cadetill

cadetill

    Advanced Member

  • Moderadores
  • PipPipPip
  • 994 mensajes
  • LocationEspaña

Escrito 12 noviembre 2012 - 08:12

Me había perdido este hilo jejeje

Personalmente he pasado por varios motores y componentes de acceso. En los inicios, con tablas Paradox y DBase, usaba BDE. Cuando liberaron Interbase 6, pasé a usar ese motor con IBX. Cuando salió Firebird y las FIBPlus no dudé en usarlos conjuntamente dado el buen rendimiento y compatibilidad que ofrecían. Para conexiones a MySQL he usado Zeos con buenos resultados (no he tenido ocasión de probar AnyDAC) y para conexiones a archivos XLS o Access ADO (aunque con XLS he tenido bastantes problemas con columnas que él cree que son numéricas y son cadenas y viceversa).

Eso por lo que refiere a lo personal. En cuanto a lo profesional, pues ya tienes que hacer más o menos lo que la empresa quiere. En estos momentos la base de datos que gestiona el ERP de la empresa está en DB2 y nos conectamos mediante BDE gracias a una conexión ODBC generada por CO400 (unos componentes que, a parte de ser caros no me gusta nada el resultado que dan, ni mediante el acceso nativo que tienen ni mediante el acceso ODBC que ofrecen). En este sentido me gustaría probar ADO (como comenta Poli), pero como no dispongo de demasiado tiempo en la oficina y de cara al próximo año implantan SAP..... pues como que paso de ir haciendo pruebas. Y con lo que respecta al Punto de Venta, ahí usamos Firebird conectados mediante IBX.

Así pues, resumiendo:
- Firebird: sin duda FIBPlus por rendimiento y compatibilidad
- DB2: sólo he probado BDE con ODBC
- MySQL: Zeos con buen rendimiento
- Paradox, DBase: BDE
- Access, Excel: ADO

Nos leemos
  • 0

#15 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 12 noviembre 2012 - 09:51


Eso por lo que refiere a lo personal. En cuanto a lo profesional, pues ya tienes que hacer más o menos lo que la empresa quiere. En estos momentos la base de datos que gestiona el ERP de la empresa está en DB2 y nos conectamos mediante BDE gracias a una conexión ODBC generada por CO400 (unos componentes que, a parte de ser caros no me gusta nada el resultado que dan, ni mediante el acceso nativo que tienen ni mediante el acceso ODBC que ofrecen). En este sentido me gustaría probar ADO (como comenta Poli),


Conozco esos componentes. Dónde laboro usamos db2 en un iseries, antes as400. Y puedo asegurarte que obtendrías mejores resultados con ADO + ODBC, pues aunque existe un driver OleDb para db2/iseries, asombrósamente me ha dado mejores resultados en tiempo el ODBC. Es cosa de probar amigo.
  • 0

#16 seoane

seoane

    Advanced Member

  • Administrador
  • 1.259 mensajes
  • LocationEspaña

Escrito 12 noviembre 2012 - 09:54

Es un placer leer las opiniones de gente con experiencia. Como ya dije antes, tengo poca experiencia con bases de datos, y lo que es peor es que me toco aprender por mi cuenta, por lo que, aunque las "cosas" funcionan, siempre te queda la duda de saber si lo estas haciendo de la mejor forma, o si puedes conseguir mas rendimiento.

Gracias a todos  (y)

PD: Si alguien quiere añadir mas opiniones, adelante, no estoy dando el tema por cerrado
  • 0

#17 rchavezh

rchavezh

    Newbie

  • Miembros
  • Pip
  • 6 mensajes

Escrito 09 mayo 2013 - 10:02

Estoy desarrollando un proyecto con DataSnap con conexión a datos dbExpress los datos los extraigo de una base de datos SQL pero algunos otros estan en DBF de FoxPro pero al conexión ODBC de dbExpress solo marca error alguien a conectado esto

el error que me marca es el siguiente

Filed [Microsoft] [Administrador de controladores ODBC] coneccion no abierta
  • 0

#18 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 09 mayo 2013 - 10:53

Estoy desarrollando un proyecto con DataSnap con conexión a datos dbExpress los datos los extraigo de una base de datos SQL pero algunos otros estan en DBF de FoxPro pero al conexión ODBC de dbExpress solo marca error alguien a conectado esto

el error que me marca es el siguiente

Filed [Microsoft] [Administrador de controladores ODBC] coneccion no abierta


Hola amigo, Has probado que efectivamente  el ODBC pueda coenctarse a tu archivo de FoxPro? eso puedes hacerlo con un archivo Datalink de extensión UDL.


saluidos

PD. lo ideal es que se hubiera abierto un nuevo hilo con esta pregunta amigo. Saludos
  • 0

#19 rchavezh

rchavezh

    Newbie

  • Miembros
  • Pip
  • 6 mensajes

Escrito 09 mayo 2013 - 11:33

nuevo tema

http://www.delphiacc...bexpress-dbase/
  • 0




IP.Board spam blocked by CleanTalk.