PDA

Ver la Versión Completa : Como configuro MySQL para trabajar en delphi?


desve
30-03-2005, 10:16:39
Hace poco me di a la tarea de instalar php+apache+mysql para hacer unas pruebas de programacion en php.

me gusto el manejador d la base de datos, entonces kisiera saber como poder conectarlo a delphi.

Hay componentes prediseñados que me puedan ayudar?


Gracias.

kayetano
30-03-2005, 11:21:54
Hola

Lo puedes hacer por ODBC o con los componentes ZEOS http://sourceforge.net/project/showfiles.php?group_id=35994&package_id=28219

The_figo
25-10-2006, 20:47:19
Mira amigo lo puedes hacer es utilizar los comoponentes dbExpress de delphi ademas de colocar el archivo llamado LibMysql.dll en la carpeta system32( Windows XP) System en otro sistema operativo con respecto a windows ok en linux es otra historia de tu computadora para que no tengas ningun problema

dimony
06-11-2006, 21:52:30
Hola, yo actualmente la conexión la realizo mediante el ODBC que te puedes descargar de www.mysql.com (http://www.mysql.com) , pero hay pequeño problema que todavia no he solventado y que si quiero pasar de una base de datos a otras tengo que irme al administrador de odbc he indicarselo. Mediante los componentes que te han citado anteriormente seguro que puedes cambiar de base de datos en tiempo de ejecución.
Los componentes que utilizo para la conexion son los del Borland Database Enginee (BDE), así que tiene que pasar a traves de:

MySQL <--> ODBC <-->BDE <--> Aplicación.

Pasos generales para la instalación:

1.- Instalacion del ODBC.
2.- Configuración del ODBC.
3.- Aplicación delphi:
(*) Realizar la conexion en
3.1.- TDataModule
3.2.- TDatabase
3.3.- TTable
3.4.- TDataSet

Ya estaría realizada una conexión.

AzidRain
23-11-2006, 17:20:12
La forma mas facil, sencilla y muy rápida es con las Zeos. Si usas ODBC le estas metiendo otra capa intermedia entre tu programa y MySQL. Las Zeos son sencillas, primero sueltas un TZConnection, en sus propiedades indicas los datos del servidor (IP, usuario, pasw, protocolo: MySQL, Postgress, etc.) luego sueltas un TZQuery o un TZTable y en su propiedad connection la enlazas con el TZConnection que ya tenias configurado. Si usas un TZTable indicas que tabla quieres accesar y si usas un TZQUery en su propiedad SQL escribes la sentencia que quieras ejecutar.

Para activar todo, el TZConnection en su propiedad connected la pones a TRUE para que haga la conexion y en la de las TZQuery o TZTable a active.

Tanto TZQuery como TZTable son descendientes de TDataset por lo que puedes manejarlas justo como lo harias con cualquier otra tabla en Delphi. Además no necesitas ni siquiera tener instalado el BDE.

Para hacer el deploy de tu aplicación unicamente acompañas tu ejectuable de la DLL correspondiente (libmysql41.dll).

las Zeos tambien pueden usar Postgress y el proceso es identico.

roman
23-11-2006, 17:33:18
Yo estoy de acuerdo con AzidRain, mejor prescindir de ODBC. No obstante, aun cuando odbc no permita cambiar fácilmente de una base a otra, hay que recordar que con MySql uno realmente no se conecta a una base de datos, cosa que casi todas las componentes lo olvidan y te fuerzan a seleccionar una base al momento de conectarte. Con MySql te conectas al servidor y la base que especificas es sólo la base a usar por defecto en las consultas si no se especifica una. Es decir, una consulta en MySql puede ser:


select acme.usuarios.* from acme.usuarios


donde especificas la base (acme) y la tabla (usuarios). Si sólo se pone


select usuarios.* from usuarios


entonces MySql usará la base escogida por defecto.

En resumen, quiero suponer que aun con la restricción de odbc, puede anteponerse el nombre de la otra base en la consulta sql, para solventar el problema.

// Saludos

The_figo
23-11-2006, 20:03:13
Mira compañero yo te recomiendo que utilizes dbExpress y una version 4.xx de mySQL y veras que no es nada dificil trabajar con ello

The_figo
23-11-2006, 20:04:59
Utiliza dbExpress y una version menor a la MysQL server 5.0 es decir utilizarias la vercion 4.xx , ademas vas a trabajar con los siguientes elementos

SQLConnection, DataSetProvider, ClienteDataset y un DataSource y veras ke no hay ningun problema. Suerte...