FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
No puedo conectar BD con MySQLDAC
Hola amigos, estoy probando DAC para MySQL y lo primero que he tenido que hacer es instalar MySQL y ya eso se me ha hecho cuesta arriba porque me daba errores al instalarse y lo he tenido que instalar tres veces.
Una vez instalado mysql he instalado MySQLDAC y para probarlo añado un TmySQLDatabase y le pongo el UserName, UserPassword, Host, DatabaseName y cuando intento poner a true la propiedad Connected me tira un error. Asi está el componente configurado: Código:
object mySQLDatabase1: TmySQLDatabase DatabaseName = 'dbdemos' UserName = 'root' UserPassword = '45659345' Host = 'localhost' ConnectOptions = [coCompress] Params.Strings = ( 'Port=3306' 'TIMEOUT=30' 'DatabaseName=dbdemos' 'Host=localhost' 'PWD=45659345' 'UID=root') DatasetOptions = [] Left = 112 Top = 64 end Cita:
|
#2
|
||||
|
||||
Se me olvidó decir que al reiniciar el pc siempre me suelta dos mensajes el MySQL Notifier:
Primer mensaje: Cita:
Cita:
|
#3
|
||||
|
||||
No sé, algo me suena extraño aquí. dbdemos se parece más a la base de datos que viene de ejemplo con el BDE Paradox y, por otro lado, a diferencia de Paradox, las bases de datos en MySQL no se colocan físicamente en un directorio de la aplicación si no que todas viven en un directorio del servidor y los clientes no tienen acceso directo a ellas. Aún suponiendo que la base dbdemos es, como dices, un ejemplo de MySqlDac, raramente se instalan copiando directamente el archivo o archivos físicos. Más bien consisten en scripts con las sentencias CREATE, INSERT y UPDATE que debes ejecutar para recrear la base,
// Saludos |
#4
|
||||
|
||||
Yo antes usaba SQLite y simplemente ponia la base de datos al lado del ejecutable y la dll y podia hacer lo que quisiera con ella conectandome a ella sin problemas.
Ahora quiero ver MySQL pero no tengo ni idea. ¿quieres decir que MySQL tiene que estar obligatoriamente en un servidor de internet? ¿No sirve para gestionar una base de datos que tengas en el mismo pc? |
#5
|
||||
|
||||
Sí que puedes. Pero aún estando instalada en tu propia pc, sigue siendo un servidor. De todas formas, y para no desviarte más, en tu mensaje original se ve que tu servidor está bien instalado y tienes acceso a él, es decir, puedes conectarte sin problemas. El error es simplemente que no existe esa base de datos en el servidor local.
Intenta conectarte sin especificar la base de datos (el parámetro DatabaseName) y manda una consulta como esta:
Eso debería devolverte la lista de las bases de datos que hay instaladas en tu servidor local. // Saludos |
#6
|
||||
|
||||
¿Donde pongo eso? en la consola me dice que no existe ese comando.
¿Donde se supone que está mi servidor local para poner ahi mi base de datos y que la encuentre? |
#7
|
||||
|
||||
vale, despues de hacer varias pruebas he conseguido que me muestre lo que indicas:
Cita:
|
#8
|
||||
|
||||
Abre una ventana de comandos (cmd.exe) y ejecuta:
Código:
C:> mysql -uroot -p Código:
mysql> // Saludos |
#9
|
||||
|
||||
Ja, ja. Terminé de escribir después de tu nuevo mensaje.
Pues ahí es donde ves claramente que no hay una base dbdemos instalada. Puedes usar herramientas como phpMyAdmin (web) o MySQL Workbench (propia de mysql y gratuita) para crear tus bases y tablas. Por cierto, las tres primeras bases que te muestra, no las toques. sakila y world seguramente sí son demos y test está vacía y puedes jugar ahí. Para ver qué tablas tiene una base, ejecuta la consulta Código:
show tables; // Saludos |
#10
|
||||
|
||||
De momento hasta saber como trabajar con la BD que deseo estoy investigando un poco con una de las que aparece en la lista pero solo para hacer consultas. Tengo esto para hacer una consulta:
Código PHP:
Última edición por aguml fecha: 07-10-2015 a las 22:33:28. |
#11
|
||||
|
||||
Vale, ya me di cuenta de mi error. Me había comido algunos signos de porcentaje.
Ahora otra cosa más. La idea es que en la consulta me salgan los resultados que se adecuan a esos parámetros de la consulta y que al hacer clic en uno de ellos se rellenen los tedits con los valores de las celdas de esa fila. Uso un dbgrid ¿alguien sabe como hacer eso? Lo he hecho pero con listboxs y esto es diferente y no veo como hacerlo. Lo único que tengo hasta ahora es que el dbgrid lo he puesto de solo lectura, que no pueda editar, y que seleccione la fila seleccionada. Y otra cosa. La idea es que si tengo por ejemplo 20 caramelos en la base de datos y yo elijo esa línea e indico en un tedit que cojo 5 pues esos 5 se resten. ¿eso se puede hacer desde la mysqlquery o tengo que usar un mysqltable? ¿como seria eso? Hay un componente mysqlupdate ¿es para eso? Última edición por aguml fecha: 07-10-2015 a las 23:43:20. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
No puedo conectar php con mysql | Ken_Masters | PHP | 6 | 05-01-2009 18:23:00 |
no me puedo conectar con el BDE | fedelphi | Conexión con bases de datos | 1 | 16-11-2006 22:56:02 |
No puedo conectar en internet | elcigarra | MySQL | 3 | 06-08-2006 15:55:17 |
no puedo conectar a mysql | acertij022 | MySQL | 3 | 02-12-2004 14:44:48 |
no puedo conectar en red | sercornejov | Firebird e Interbase | 1 | 01-12-2004 20:12:19 |
|