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 04-01-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Qué motor DB me recomiendan?

Qué motor DB me recomiendan para una aplicación de forma local?
Resulta que la habia realizado con access (mdb), pero se va ralentizando mucho. Que alternativas tengo? Me gusta mucho mySql, pero hacerlo correr para una aplicación local que no este en red, me parece exesivo. Hay algo que pueda usar?

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #2  
Antiguo 04-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Que se pone lenta access??
Tengo una base de datos (access) con mas de 70000 KB, es mucha informacion casi 7 años.
Trabajo en red con 8 ordenadores, todos actualizan, cuando quieren.
Nunca se me ha puesto lenta, me envía la información en décimas de segundo.
He hecho la prueba con mysql, firebird y access y no notas la diferencia en tiempo de entrega de datos.
Para mi el problema esta en como se llama a la base de datos, si access en local se te pone lenta, olvidate de mysql o firebird, seran mas lentas ya que procesan la información diferente, estos son servidores, lo que quiere decir que te darán la información en partes.
Es mi humilde opinion.
Saludos
Responder Con Cita
  #3  
Antiguo 04-01-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Que te parece usar la embbeded de mySQL o la embedded de Firebird?

P.D. ¿En que tipo de aplicacion estas usando tu bd Access?

Última edición por FGarcia fecha: 04-01-2008 a las 23:20:55.
Responder Con Cita
  #4  
Antiguo 04-01-2008
Avatar de juanelo
juanelo juanelo is offline
Miembro
 
Registrado: sep 2007
Posts: 1.084
Poder: 18
juanelo Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Para mi el problema esta en como se llama a la base de datos, si access en local se te pone lenta, olvidate de mysql o firebird, seran mas lentas ya que procesan la información diferente, estos son servidores, lo que quiere decir que te darán la información en partes.
Es mi humilde opinion.
Saludos
Que tal,
Pues discrepo en lo que dice Caral en su comentario acerca de Firebird, el hecho de que sea un servidor no implica el que de manera local se vuelva mas lenta, mas bien, el problema es muchas veces la cantidad de informacion que pretendemos traer hacia el usuario, y la forma poco optima en que se obtiene esta, por ejemplo una query mal hecha.

En lo que estoy de acuerdo es en el comentario de FGarcia, si la aplicacion solo va accesar a los datos desde la misma computadora, entonces existe la version embbeded de firebird.

PD: Tengo base de datos de mas de 500MB (tablas con mas de un millon de registros) corriendo de manera "local" aun con una instalacion de servidor en firebird, y la operacion cotidiana sigue teniendo la misma velocidad como el primer dia.

Saludos
Responder Con Cita
  #5  
Antiguo 05-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Pues el caso de la rapidez o lentitud, esta muy discutido.
Ya lo comente y tu lo reafirmas Juanelo, depende de como se llame a las tablas, sea con tables o querys, pero aun asi, depende, siempre depende.
La tablas se pueden llamar con access, prácticamente igual que con otros, si colocas un top, este enviara los datos necesarios y aligerara el proceso.
Firebird es rápido, es cierto, pero access lo es también si se sabe usar.
Lo digo, tengo consultas en las que llama a cinco tablas a la vez y me envía una cantidad de datos grande y no hay diferencia (optica) usando firebird en la misma consulta.
Como siempre digo, esta bien, Firebird tiene los Tigers, bueno access tiene gatitos.
No digo que access sea bueno, o una buena opción, solo digo que no se le puede echar la culpa de la rapidez, lentitud, desorden, datos incompletos etc, etc, a access u otra, normalmente están mal hechas las consultas.
Saludos
Responder Con Cita
  #6  
Antiguo 05-01-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Sin embargo, si a la misma aplicacion que desarrolle, le cambio una simple base access, por un motor mySQL, la aplicacion vuela, es rapidisima. A lo que voy, es que no quiero usar access, quiero un verdadero motor, algo potente, porque hoy accedo de forma local, quizas en un futuro lo haga de forma remota. Como es el tema del mySQL embbeded, me interesa mucho, hay alguna nota de aplicacion etc etc. orientenme para saber por donde empezar a leer.

En cuanto a velocidad y performance, opino igual que Caral, y puede ser discutible a cualquier punto, ahora bien, no es mas que medir el tiempo que tarda el motor en entregar un cursor de datos a una pc cliente, y probar esto mismo con varios motores diferentes, en fin, no es mi objeto este tema, sino mas bien, avanzar un poquito mas a otra tecnologia mejor.

Saludos y gracias a todos.
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #7  
Antiguo 05-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Como siempre digo, esta bien, Firebird tiene los Tigers, bueno access tiene gatitos.
Me ha gustado mucho esa afirmación, no la había escuchado nunca, (te la copio ).

La estrategia Embebida, quizás te haga tomar decisiones que después en red tengas que desechar. Por ejemplo, como es local (1 solo usuario) "¿para qué voy a usar Procedimientos almacenados?, si de todas formas el servidor y el cliente es el mismo ordenador...." al final acabas haciendo una aplicación de escritorio que al poner en red tendrá problemas.

Si de veras quieres embarcarte en Cliente/Servidor, yo lo hacía directamente para ese sistema, al tiempo de poner en red, solo tendrías que configurar la dirección de la base de datos.

Es cierto que la filosofía de desarrollo es totalmente distinto a tablas de escritorio, eres tú quien tiene que valorar si ese esfuerzo merece la pena.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 05-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Pues si estas convencido en cambiar de base de datos, yo me inclinaria por firebird.
He probado (soy un curioso) Mysql y Firebird, me quedo con la segunda.
Sigo pensando en que quien sabe que programa tengas, en mis pruebas mysql con ado, fue mas lenta, mucho mas lenta que access, en local, en red, se durmio en los laureles, ya con zeos cambio.
Estan bien las opiniones, asi tendras un punto de vista mas amplio.
Recuerda, aqui el Novato soy yo, hazle caso a los que si saben.
Saludos
Responder Con Cita
  #9  
Antiguo 06-01-2008
waly2k1 waly2k1 is offline
Miembro
 
Registrado: dic 2006
Ubicación: El país de las maravillas(Argentina)
Posts: 251
Poder: 18
waly2k1 Va por buen camino
Access ?

Desde ya si tienes la oportunidad de migrar tu aplicación a una base de datos real, hacelo. No te quedes jamás con Access, una cosa es un gestor de Base de Datos y otra cosa totalmente distinta es un archivo compartido en red con formato BD. Un 'archivo' Access a medida que crece pierde perfomance y ni hablar de muchos usuarios accediendo a ese archivo, con lo cual tu aplicación pasa de ser algo bueno, eficiente a un mal programita, tampoco hablo de los casos en que se corrompe el archivo y pierdes toda tu información.

Prueba con Interbase, Firebird o muchas otras opciones de Gestores de Bases de Datos que por ser local no van a ser mas lentos jamás que Access. Piensa siempre en 'grande', nunca se sabe el volumen de información que podrá llegar a manejar tu aplicación a futuro, ahora sí sabes lo que no debes usar.

Bueno, a pesar de ser redundante espero te sirva de algo mi consejo. Exitos!
Responder Con Cita
  #10  
Antiguo 06-01-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Ya estoy decidido, voy a migrar todo utilizando un gestor de DB, yo estuve usando mySQL y Zeos, una combinacion mas que satisfactoria, pero el tema es que no me queda claro como es el tema del mySql embebido, ya que lo que no quiero hacer, es tener que instalar el servidor mySql, hay alguna forma de resolver eso?, y lo digo tanto para mySql/Firebird, como si fuese un MDAC pero para mySql o Firebird.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #11  
Antiguo 06-01-2008
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Yo usaría firebird, simplemente una dll y listo.
Responder Con Cita
  #12  
Antiguo 08-01-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Yo usaría firebird, simplemente una dll y listo.
Me gusta eso, y como seria? accediendo a las funciones de la dll para el manejo de la DB?, seria igual en caso de que usara mySQL?

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #13  
Antiguo 09-01-2008
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Bueno, auque parece que ya te estás decidiendo por una arquitectura de servidor empotrada, sólo a forma de sugerencia te recomendaría un motor que se llama TurboDB.
Es realmente bueno y rápido. Además de permitirte realizar búquedas de texto completo (si te interesan).

El único inconveniente es que es de pago, pero merece la pena que le pongas un ojo. Tienen una versión trial para descargar. Es muy fácil de utilizar.
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #14  
Antiguo 10-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Podes entrarle a firebird con ADO, con IBX con BDE (obsoleto, pero funcional), con MDO, con IBO, FIBPlus y ¡orale! hay muchas opciones.

El hecho de la dll, es totalmente transparente para vos. Vos mirás siempre Datasets de delphi, queries, tablas, bases de datos, etc.

Con IBX/MDO/FIBPlus, que derivan de un viejo proyecto llamado FreeIB, tenés que manejar de manera explicita las transacciones, pero al final te acostumbrás.

Si usas el FirebirdEmbedded, podes desarrollar teniendo instaldo un FirebirdServer, y al final, cuando distribuis la aplicación, sustituis el dll del cliente de firebird por el dll del embedded y eso es todo!

Es muy práctico, y tiene toda la potencia de firebird, simplemente sorprendente!.

Con la característica de poder correr bases de datos de solo lectura (ver gfix -mode), podes hacer aplicaciones de acceso a base de datos (una enciclopedia, o un directorio telefónico nacional, por ejemplo) que se distribuyan sobre medios de solo lectura (cd-roms/dvd-roms).

No hablo mas... ya me salí del tema.

Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #15  
Antiguo 10-01-2008
Oriol M. Oriol M. is offline
Miembro
 
Registrado: jul 2006
Posts: 10
Poder: 0
Oriol M. Va por buen camino
Hola a todos, me sorprende un poco el hecho que no se haya mencionado PostgreSQL como opción para migrar la BD. Tengo algunos años de estar trabajando con esto, y hasta ahora todas las comparaciones que he realizado no me han convencido de cambiar.

Aunque la aplicación que se menciona trabaja de manera local, es mucho mejor tener el servidor de BD aparte por cuestiones de portabilidad y escalabilidad, a la hora de migrar a una arquitectura de cliente-servidor, el trabajo es sólo de seguridad para las conexiones.

Saludos.
Responder Con Cita
  #16  
Antiguo 10-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cita:
Empezado por Oriol M. Ver Mensaje
Hola a todos, me sorprende un poco el hecho que no se haya mencionado PostgreSQL como opción para migrar la BD.
Pues faltaba tu opinión, indudablemente

Cita:
Empezado por Oriol M. Ver Mensaje
Aunque la aplicación que se menciona trabaja de manera local, es mucho mejor tener el servidor de BD aparte por cuestiones de portabilidad y escalabilidad, a la hora de migrar a una arquitectura de cliente-servidor, el trabajo es sólo de seguridad para las conexiones.
Utilizando una solución como Firebird Embedded, esta afirmación tuya sobre la escalabilidad, carece de sentido.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #17  
Antiguo 10-01-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por jachguate Ver Mensaje
Utilizando una solución como Firebird Embedded, esta afirmación tuya sobre la escalabilidad, carece de sentido.
Veamos, yo no entiendo algo, que es FB Embedded, hay diferentes versiones de FB

Yo estoy trabajando con FB 2.0, como se si es embedded o no

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #18  
Antiguo 10-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cita:
Empezado por egostar Ver Mensaje
Veamos, yo no entiendo algo, que es FB Embedded, hay diferentes versiones de FB
Yo diría que hay diferentes "ediciones", pues hasta ahora, cada "versión" ha tenido una "edición" embedded.

Cita:
Empezado por egostar Ver Mensaje
Yo estoy trabajando con FB 2.0, como se si es embedded o no
Si no lo sabes, puedo asegurarte categóricamente que no lo es.

El chiste del "embedded" es que podes ejecutar una aplicación sin la necesidad de instalar el motor, lo que resulta muy conveniente en muchos casos.

Por ejemplo, en mi usb tengo cierta aplicación, que ejecuto en cualquier equipo, con toda una base de datos y la funcionalidad que he querido.

Una limitante es que es monousuario, dado que el motor se ejecuta desde dentro de tu aplicación (está incrustado en ella), y la otra, es que el motor acepta la conexión independientemente del usuario/clave que se le de, pues no hay base de datos de seguridad para comprobar. Puede vivirse con ambas, aunque supongo que la segunda cambiará en cuanto salga la versión 3, que según recuerdo, ya tendrá la seguridad dentro de la propia base de datos.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #19  
Antiguo 10-01-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por jachguate Ver Mensaje
Yo diría que hay diferentes "ediciones", pues hasta ahora, cada "versión" ha tenido una "edición" embedded.

Si no lo sabes, puedo asegurarte categóricamente que no lo es.

El chiste del "embedded" es que podes ejecutar una aplicación sin la necesidad de instalar el motor, lo que resulta muy conveniente en muchos casos.

Por ejemplo, en mi usb tengo cierta aplicación, que ejecuto en cualquier equipo, con toda una base de datos y la funcionalidad que he querido.

Una limitante es que es monousuario, dado que el motor se ejecuta desde dentro de tu aplicación (está incrustado en ella), y la otra, es que el motor acepta la conexión independientemente del usuario/clave que se le de, pues no hay base de datos de seguridad para comprobar. Puede vivirse con ambas, aunque supongo que la segunda cambiará en cuanto salga la versión 3, que según recuerdo, ya tendrá la seguridad dentro de la propia base de datos.

Hasta luego.

Perdon es que soy novato. te debo una

Salud OS

PD, ya pues, no me regañes
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #20  
Antiguo 10-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cita:
Empezado por egostar Ver Mensaje
Perdon es que soy novato.

Cita:
Empezado por egostar Ver Mensaje
ya pues, no me regañes



__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
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
Que me recomiendan? D-MO PHP 2 08-12-2005 14:50:28
Que componente me recomiendan ilichhernandez OOP 7 15-11-2005 18:08:20
Que me recomiendan ? Sundance Gráficos 2 06-08-2005 06:36:31
Me recomiendan un tutorial? marceloalegre C++ Builder 5 09-06-2005 08:56:23
Me recomiendan Web Sites? marceloalegre SQL 2 18-05-2005 23:19:57


La franja horaria es GMT +2. Ahora son las 12:02:08.


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