Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Mysql y dbExpress (https://www.clubdelphi.com/foros/showthread.php?t=12554)

inexperto 20-07-2004 17:52:52

Mysql y dbExpress
 
hola....
Yo conecto la BD mysql y delphi 7 con Zeos, se llevan bastante bien, mi duda
es la sgte, porque utilizar Zeos si delphi trae los componentes dbExpress para hacerlo (yo uso Zeos porque me lo recomendaron en este foro).
asi que en una tarde.....realize la conexion con dbExpress y al colocarle los parametros correspondientes al componente SqlConnection y al darle un true a la conexion me envio el sgte error:

Unable to load libmysql.dll

esta a la vista el problema...no esta la famosa dll asi que la busque en mi disco duro y ahi esta vivita y coleando.

mi duda es la sgte.... porque se recomienda zeos en vez de dbexpress (esa es mi impresion).
y mi problema es ......porque me da ese error si la dll esta en apartado de windows\system32,.... mysql\lib\debug,........ mysql\lib\opt
chau:confused:

ruina 20-07-2004 18:53:59

te da el error porque la libreria libmysql.dll que viene con mysql es especifica de C, para enchufar mysql necesitas la dll especifica (que ya no me acuerdo de donde la bajé) que es de 228kb (y no de 244kb)

jachguate 20-07-2004 19:05:42

Cita:

Empezado por ruina
te da el error porque la libreria libmysql.dll que viene con mysql es especifica de C

Que significa esto??

La idea de las DLL's es que pueden ser usadas desde cualquier lenguaje (que las soporte, como delphi) independientemente del lenguaje en el que estén hechas.

¿Podrias explicarte mejor?

Hasta luego.

;)

ruina 20-07-2004 19:57:50

pues siento decirte que no puedo explicarme mejor, es algo que lei (ya no recuerdo donde) aunque me imagino que lo que querria decir es que es necesario una dll especifica para el dbexpress de delphi.si alguien encuentra el sitio web donde esta esa dll que lo diga ahora o calle para siempre (o la subo a un ftp)

moesis 21-07-2004 01:26:36

Saludos,

A mi me pasó lo mismo con la famosa DLL cuando actualicé el Delphi 7 con el Patch del dbExpress después de eso no funciona o al menos no lo pude hacer funcionar, si pudieran aclarar cual es el problema y como solucionarlo lo agradecería.

Por otro lado, yo he usado Zeos y dbExpress y si te puedo decir una cosa, dbExpress es infinitamente más rápida que Zeos pero por el contrario no te permite hacer una navegación entre los datos (next, prev) no se puede hacer, solo puedes ir en una dirección y normalmente es hacia adelante, lo que te obliga a replantear determinados procedimientos de tu programa.

Espero haberte ayudado,

Morfo 21-07-2004 03:46:25

Caray!
 
La DLL si esta escrita en C, en Ensamblador o hasta en Visual Basic puede ser usada por cualquier lenguaje habilitado para ello.
Esto yo no lo lei sino que lo he hecho.

Cuando me sale ese error copio la libreria a mi carpeta del proyecto en delphi y fin del problema.

La DLL encuentra en el directorio Bin del directorio de Mysql en windows....

El tamaño de la libreria sólo indica distintas versiones de la misma.

guillotmarc 21-07-2004 14:09:57

Hola.

Cita:

Empezado por moesis
pero por el contrario no te permite hacer una navegación entre los datos (next, prev) no se puede hacer, solo puedes ir en una dirección y normalmente es hacia adelante, lo que te obliga a replantear determinados procedimientos de tu programa.

Te has olvidado comentar también que el Dataset obtenido por dbExpress es de solo lectura, no se puede modificar.

Para poder modificar un Dataset u obtener un Dataset navegable (hacia adelante y hacia atrás, con lo que se puede conectar en grids) se conecta el componente dbExpress con un ClientDataset (mediante un DatasetProvider).

Saludos.

fredo 19-10-2005 15:27:08

funciona bien DBExpress
 
la dll que te falta biene con el mismo MySQL, (con la instalcion por defecto viene en c:\mysql\bin\libmysql.dll) esa es la ruta que debe tener el componente TSQLConection, la otra dll que necesitas debe acompañar a tu programa es la dbexpmysql.dll, si la acompaña tu programa no necesita de delphi para correr, ocea que independiente, por ultimo si utilizas TSimpledataset, entonces necesitas la midas.dll en tu carpeta system o system32, que varia segun la version del windows que tengas, yo la copio a las dos para no hacerme problemas.....

en cuanto a funcionalidad, me las arregle para hacer facil el uso de dbexpress, al punto que ya no utiliza ninguna otra herrmienta de conexion.... saludos. :D

pyanqn 01-11-2005 17:18:30

guillotMarc podrías esplicarme como hacer esto?
 
Mira, tengo justamente el problema de conectarme con MySql, por el tema de que no puedo usar un DBGrid,y navegarlo (en ambos sentidos, e insertar, editar...) Bien vos decis que conectando el componente dbExpress con un clientDataSet por medio de un DataSetProvider...

Esto es así:

Uso un componente SQLConnection y lo configuro
Luego, Pongo un ClientDataSet y un DataSetProvider
y por ultimo como los conecto?

Despues de esto, pongo un DataSource y conecto mi DBGrid con este...

Gracias

fredo 12-05-2006 15:26:48

sorry recien vi el mensaje.....mas vale tarde que nunca
 
Cita:

Uso un componente SQLConnection y lo configuro
Luego, Pongo un ClientDataSet y un DataSetProvider
y por ultimo como los conecto?
1.-haces la conexion
2.-Arrojas un TSQLQuery o TSimpleDataset
3.-Colocas la propiedad de conexion correcta (SQLConnection:= DB o Connection:=DB)
si TSQLQuery
entonces:
4. TSQLQuery.sql.text:='Consulta'
5. Tirar un TDataSetProvider y lo enlasas Al TSQLQuery
6. Lansas el ClientDataSet y lo enlazas a l proveedor
7. Abres el TSQLQuery
8. activas el ClientDataSet para cargar los datos...
<FIN>
si no
4.TSimpleDataset.Dataset.CommandText:='Consulta'
5.Activar o Abrir......
<FIN>


Eso Saludos.
Mas Vale tarde que nunca...;)


La franja horaria es GMT +2. Ahora son las 00:57:01.

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