FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
|||
|
|||
Delphi y MySQL
tengo instalada la version 3.23.57 de MySQL y Delphi7, alguien podria darme los pasos para crear una BD y usarla con dbExpress de Delphi? me da el error de q no encuentra limysql.dll
|
#2
|
||||
|
||||
Hola.
Quizá este artículo del doctor Bob te pueda ayudar : http://www.thedelphimagazine.com/Samples/1540/1540.htm Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
||||
|
||||
Hola
En concreto te interesa esta parte : Cita:
Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#4
|
|||
|
|||
lo del LibraryName viene correcto en Delphi7, lo del vendorlib no encuentro libmysql.dll en ningun lugar del disco duro aunque tengo instalado MySQL 3.23.57, lo estroy buscando por internet pero por el momento no lo he encontrado, por si acaso es un archivo pequeño (hasta 3 mb) me gustaria si lo mandases por email (delfino03@caramail.com) gracias de antemano..
|
#5
|
||||
|
||||
Hola.
Nunca he usado MySQL, solamente te he comentado lo que está en ese artículo de Bow Swart. Está librería en concreto la deberias encontrar en c:\MySQL\bin. Lo que dice el artículo es que tienes que poner esa carpeta en el Path de Windows, o bien poner el path en la propiedad VendorLib del TSQLConnection. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#6
|
|||
|
|||
ya he solucionado lo de estas librerias, ahora el problema q tengo es cuando me pide el usuario y el password y lo q le doy me dice "invalid password/username", acostumbrado a interbase q tiene unos por defecto q se pueden no se con MySQL como funciona, a ver si alguien acostumbrado con ello q me lo diga, asias..
|
#7
|
||||
|
||||
hola
porque no bajas el mysql front, que es un entorno administrativo visual de mysql y es gratis. para accesar escribe el nombre del usuario por defecto que es el root y el password lo dejas en blanco, luego creas tu usuario y le cambias el password al root. no es bueno trabajar con el root porque es el usuario administrativo y se puede dañar cosas, lo recomendable es crear un usuario propio. para trabajar con mysql y delphi lo recomendable es que utilices las librerias ZeosDB que son bastante buenas o utiliza el MyODBC. espero haberte ayudado algo. Saludo
__________________
Ivan Lora http://www.arrobasoft.da.ru Valientes son aquellas personas que triunfan donde otros fracasan. Bienaventurado los que nada esperan porque jamas seran defraudados. |
#8
|
||||
|
||||
Hola
¿ Has probado lo que dice el artículo ?. O sea, prueba con usuario root y contraseña en blanco. (este problema, al igual que el problema con libmysql.dll lo va a encontrar igual en dbExpress que con Zeos, etc. ...) Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 01-08-2003 a las 10:06:09. |
#9
|
||||
|
||||
hola
Cita:
l y libpq.dll que son necesarios para operar mysql con delphi. he oido decir que dbexpress no es muy recomendable para trabajar con mysql, yo no puedo agregar nada pues nunca he trabajado con dbExpress. yo tengo una aplicacion hecha con mysql y me funciona muy bien. solo tienes que colocar la direccion IP del equipo y el usuario/password y listo conectado. Saludo
__________________
Ivan Lora http://www.arrobasoft.da.ru Valientes son aquellas personas que triunfan donde otros fracasan. Bienaventurado los que nada esperan porque jamas seran defraudados. |
#10
|
||||
|
||||
Hola.
Si, en este Foro dbExpress + MySQL tiene cierta mala reputación. Aunque por lo que he léido la mayoría de los problemas que aparecen son achacables al propio MySQL en lugar de a dbExpress. Por ejemplo el tema de la librería libmysql.dll. Esta librería es el cliente de MySQL, entonces lo lógico es que la ubiquen en un lugar accesible a las aplicaciones clientes. Lo normal sería que se ubicase en el directorio de Sistema, o en el caso de que la pongan en una carpeta de MySQL, deberían añadir esa carpeta a la variable de entorno Path. Lo que no me parece ni normal ni aconsejable es que sean tus componentes de acceso a datos los que proporcionen esa libreria. ¿ Que ocurre cuando cambias de versión ?, si en esa versión cambian la libreria de acceso para proporcionar soporte a nuevos tipos o lo que sea, entonces como la aplicación accede al Servidor mediante una libreria anticuada podemos encontrarnos multiples problemas. Lo mejor es utilizar la librería propia instalada por MySQL, aunque MySQL nos obliga a hacerla accesible manualmente. El único problema real que conozco que haya sucedido con dbExpress y MySQL fué cuando salió la versión de MySQL con soporte de transacciones, puesto que el driver dbExpress estaba hecho para las versiones anteriores, y fallaba. Aunque esto es algo lógico y el driver dbExpress ya está actualizado (aunque claro, nadie sabe que puede pasar si intentas utilizarlo por ejemplo con las betas de MySQL 4). Otra cosa es que uno no se sienta a gusto con dbExpress. Realmente tienen una filosofía muy distinta a componentes más tradicionales como BDE, ADO, etc. ... Lo normal es que para practicamente cualquier cosa tengamos que conectar el query dbExpress a un ClientDataSet. A mi me gusta ese enfoque, pero esto ya es un tema de gustos personales. Lo mejor que puede hacer Delfino es probar varios componentes de acceso, y sacar sus propias conclusiones. Un saludo.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 01-08-2003 a las 18:58:46. |
#11
|
|||
|
|||
Por cierto para trabajar a gusto con dbExpress existe el control TSimpleDataSet en Delphi7 (TSqlClientDataSet en Delphi6) q da posibilidad de bidireccionalidad y buffering a la BD..
|
#12
|
||||
|
||||
Hola.
En efecto, si solo quieres mostrar los datos en una grid, esos controles sirven perfectamente. Pero si también quieres modificar los datos, te recomiendo que uses 1 TSQLQuery + 1 TDataSetProvider + 1 TClientDataSet. De esta forma en las propiedades de los campos persistentes del TSQLQuery puedes indicar cual es el campo de clave primaria (activando su flag pfInKey). Lo que te permite usar el modo de actualización upWhereKeyOnly o upWhereChanged del Provider, imprescindible si los datos que se modifican provienen de una consulta con una union de campos. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
|
|
|