• Viernes 29 de Marzo de 2024, 16:07

Autor Tema:  Re: Manejos De Base De Datos  (Leído 2785 veces)

niko24

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Manejos De Base De Datos
« en: Jueves 7 de Abril de 2005, 18:55 »
0
Hola, soy principiante en esto del C++. Quisiera saber si desde Dev-C++ se pueden manejar bases de datos de Mysql, y si se necesita algo para ello, como un API de Mysql.  :unsure:

Y tambien si saben de alguna pagina donde expliquen un poco el tema este.

Gracias,  :smartass:   :P  

esperando respuestas  :comp:   :whistling:

niko24

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Manejos De Base De Datos
« Respuesta #1 en: Viernes 8 de Abril de 2005, 00:55 »
0
:hola:  Bueno, parece que nadie se atreve a responderme nada, quizas preguntaba algo no muy concreto  <_< .

Ya encontre un codigo: :comp:

#include "windows.h"
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <mysql.h>

int main()
{
      char userName[100];
   char password[100];
   char dbName[100];      
   int connected=0;
   MYSQL *dbHandle;

       dbHandle=mysql_init((MYSQL*)0);
   
       printf("Simple MySql-query-tool\n\n");
       
         printf("\nUser:");
      gets(userName);
      printf("Password:");
      gets(password);
      printf("Database:");
      gets(dbName);
      fflush(stdin);
      
      if(mysql_real_connect(dbHandle,      
              NULL,         
              userName,      
              password,      
              dbName,      
              MYSQL_PORT,   
              NULL,         
              0))
      {
         printf("\n Estamos conectado a %s\n",dbName);
         connected=1;
      }
      else
      {
         printf("\n no conectado \n");
      }
}

Se supone que debe funcionar, pero me da los siguientes errores:

  [Linker error] undefined reference to `mysql_init@4'
  [Linker error] undefined reference to `mysql_real_connect@32'


Alquien podria decirme a que se deben estos errores??  :(

© Jonathan ©

  • Moderador
  • ******
  • Mensajes: 1671
  • Nacionalidad: ar
    • Ver Perfil
    • http://www.einstec.com.ar
Re: Manejos De Base De Datos
« Respuesta #2 en: Viernes 8 de Abril de 2005, 01:19 »
0
Hola, el error es porque no esta definida la variable a la que haces referencia, puede ser que sea porque no existen dentro de la libreria de MySQL, fijatew que alas usas pero no estan declaradas en inguna parte. encontre esto, talves te sea util:

http://www.mysql.com/downloads/api-mysql++.html

MySQL++ es una interfaz (API) de la popular base de datos relacional MySQL para C++.  Su propósito es hacerla funcionar mediante contenedores STL.

Estare buscando mas info, si doy con algo te aviso. Un Abrazo!
EINSTEC Tecnología «La única fuente del conocimiento es la experiencia.»

«Lo importante es no dejar de hacerse preguntas.»

niko24

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Manejos De Base De Datos
« Respuesta #3 en: Viernes 8 de Abril de 2005, 02:57 »
0
Gracias ^^ , aunque esa pagina ya la visite.

Me descarge los archivos y los puse. Pero me surje otra duda que es la siguiente, donde debo colocar el archivo de definiciones .def


Un saludo,  :smartass:  Hoy ya hice un gran avance  :whistling:

seguire buscando  :comp:

niko24

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Manejos De Base De Datos
« Respuesta #4 en: Viernes 8 de Abril de 2005, 10:32 »
0
:kicking:   Ya lo hice funcionar!!   :D

Ahora me ha surgido una duda, pues el ejemplo funciona siendo el server localhost.  ¿ Hay alguna forma para indicarle donde esta el server, en el caso de que no quiera que sea localhost ??  :unsure:


Por si a alguien le interesa como resolvi el problema, era por unos archivos que me faltaban de mysql, que eran libmysql.lib, mysql.a, mysql.def.


 
Un saludo  :hola:   :comp:

© Jonathan ©

  • Moderador
  • ******
  • Mensajes: 1671
  • Nacionalidad: ar
    • Ver Perfil
    • http://www.einstec.com.ar
Re: Manejos De Base De Datos
« Respuesta #5 en: Lunes 11 de Abril de 2005, 08:58 »
0
Si, es localhost porque estas trabajando sobre tu misma maquina, para conectar a otra deberas introducir el IP del PC al que conectaras. Saludos
EINSTEC Tecnología «La única fuente del conocimiento es la experiencia.»

«Lo importante es no dejar de hacerse preguntas.»

niko24

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Manejos De Base De Datos
« Respuesta #6 en: Jueves 14 de Abril de 2005, 11:15 »
0
Gracias por todo  :P , ya conseguí ponerlo.


Solo tube que cambiar:

printf("\nServidor:");
gets(dbIP);
printf("\nUsuario:");
gets(userName);
printf("Password:");
gets(password);
printf("Base de Datos:");
gets(dbName);
fflush(stdin);

if(mysql_real_connect(dbHandle,
dbIP,
userName,
password,
dbName,
MYSQL_PORT,
NULL,
0))


Hasta aqui todo perfecto.  

 :rolleyes:  Ahora me estaba preguntando si podria cambiar el aspecto de la ventana, es decir, que no sea modo texto cuando me pregunte por los datos.
Que quedara como en una ventana de windows. ¿se puede  :unsure: ?

¿Me podrias orientar Jonathan, para saber que debo de buscar? ... que comandos, o algun ejemplo, o alguna pagina web  :smartass:

Saludos

pete

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Manejos De Base De Datos
« Respuesta #7 en: Viernes 21 de Octubre de 2005, 07:43 »
0
Hola:

Creo ke tengo el mismo problema ke tu para conectarme a mysql, y en el foro vi ke ya te lograste conectar, podrías poner tu codigo en el foro, te lo agradeceria mucho.

Adios :huh: