[C con Clase] Problema con MySQL

Steven Richard Davidson stevenrichard.davidson en gmail.com
Mar Ene 15 19:33:02 CET 2008


Hola Kyosuke,

2008/1/15 Kyosuke Kasuga <kyosuke_cl en yahoo.es>:
> Hi!!!, ¿k tal?, bueno tengo una consulta para ustedes, estoy haciendo un
> programa que usa MySQL y no me conecta a la base de datos, el programa me
> compila perfecto y tambien me crea el ejecutable sin problemas, cree el
> usuario "popopo" para la base de datos "restorant" pero cuando uso
> mysql_real_connect() me manda un error de que no se pudo conectar, cree el
> usuario en MySQL de la siguiente forma :
>
> GRANT ALL ON restorant.* to popopo IDENTIFIED BY 'hikaru87';
>
> Me la crea perfectamente, sin ningun error, pero cuando llamo a la base de
> datos con el siguiente codigo no me funciona:
>
> CreaBaseDatos(hwnd, NULL, "popopo", "hikaru87");
>
> Uso la version 6.0 de MySQL con wxDev-C++ 6.10.2
>
> El codigo que llama es el siguiente :
>

[CORTE]

>   if (!mysql_real_connect(MisDatos, maquina, usuario, clave, "restorant",
> MYSQL_PORT, NULL, 0)){
>       sprintf(Plantilla, "Error : %05d", mysql_error(MisDatos));
>       MessageBox (hwnd, Plantilla, "Chanchichó", MB_ICONEXCLAMATION);
>       mysql_close(MisDatos);
>       return false;
>   }

Intenta usar 0 en lugar de la constante 'MYSQL_PORT'. Si esto no
funciona, asegúrate que el servidor de MYSQL está cargado y activo en
MS-Windows. Es decir, el programa 'mysqld' tiene que estar ejecutando
como proceso en el sistema operativo. Podrías hacer la comprobación
revisando el administrador de tareas; pulsa el botón derecho en la
barra de tareas y elige "administrador de tareas".

Otra posibilidad es que tu aplicación no pueda encontrar la DLL
"mysql.dll". Asegúrate de que tu aplicación pueda encontrar esta DLL;
o bien copias el fichero a C:\windows\system32 o bien copias el
fichero en el mismo directorio del ejecutable de tu aplicación.

Si aún así no llegas a solucionar el problema, entonces creo que sería
conveniente decirnos exactamente el mensaje de error que te da
'mysql_error()'.


Espero que esto te ayude.

Steven




Más información sobre la lista de distribución Cconclase