Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema guardando variable en Mysql en C++

Estas en el tema de Problema guardando variable en Mysql en C++ en el foro de C/C++ en Foros del Web. Hola, realmente no se si el tema debe ir aqui o en el de C++, pero creo fuertemente que es aqui que pueden ayudarme. Mi ...
  #1 (permalink)  
Antiguo 11/04/2008, 08:00
 
Fecha de Ingreso: junio-2007
Mensajes: 27
Antigüedad: 16 años, 11 meses
Puntos: 0
Exclamación Problema guardando variable en Mysql en C++

Hola, realmente no se si el tema debe ir aqui o en el de C++, pero creo fuertemente que es aqui que pueden ayudarme.

Mi problema es el siguiente, estoy usando MySQL en c++ a través de la libreria MYSQL.H, y bueno, he podido trabajar en casos sencilos como conectar a la base de datos, guardar datos y extraer datos, pero en el caso en que quiero introducir una variable con un valor en la base de datos simplemente no lo hace. Les pongo un ejemplo:

Cita:
char *query2 = "INSERT INTO datos(cedula,nombre,apellido) VALUES('170356438','jaime','Gutierrez');";
Eso lo graba perfectamente, pero si en vez de Guitierrez, tengo un *char app1 = "Hernandez" simplemente no lo graba en la BD cuando lo coloco de muchas formas..

char *query2 = "INSERT INTO datos(cedula,nombre,apellido) VALUES('170356438','jaime',app1);";

char *query2 = "INSERT INTO datos(cedula,nombre,apellido) VALUES('170356438','jaime',&app1);";

esos por ejemplo no se graban en la BD.

Gracias por su ayuda
  #2 (permalink)  
Antiguo 11/04/2008, 09:13
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 3 meses
Puntos: 45
Re: Problema guardando variable en Mysql en C++

Hola no conozco mucho de C++
pero creo que deberías concatenar las cadenas
Cita:
char *query2 = "INSERT INTO datos(cedula,nombre,apellido) VALUES('170356438','jaime', " +app1+");";
ese seria la idea
  #3 (permalink)  
Antiguo 11/04/2008, 09:40
 
Fecha de Ingreso: junio-2007
Mensajes: 27
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Problema guardando variable en Mysql en C++

Cita:
main.c:32: error: operadores inválidos para el binario +
Ese es el error que me arroja al usar :
char *query2 = "INSERT INTO datos(cedula,nombre,apellido) VALUES('170356438','jaime', " +app1+");";

No se que podra estar fallando.. Estoy usando Ubuntu 7,10 por si acaso sea de relevancia
  #4 (permalink)  
Antiguo 11/04/2008, 10:02
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 3 meses
Puntos: 45
Re: Problema guardando variable en Mysql en C++

como te mencionaba hace mucho tiempo que no uso C++ asi que no me acuerdo mucho o nada.
Lo que te puse es solo un ejemplo.

En C++ me imagino que tiene su propia forma de concatenar sus cadenas (infiero que tu lo sabes por que trabajas en ese lenguaje)

Saludos!
  #5 (permalink)  
Antiguo 11/04/2008, 19:20
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 6 meses
Puntos: 655
Re: Problema guardando variable en Mysql en C++

NO considero que sea problema de MySQL porque poniendo datos fijos te funciona, es más que todo de programación. Voy a mover tu consulta a la sección respectiva.

¿Ya has tratado de monitorear con un echo lo que tiene la variable query cuando cargas la sentencia?

Es ahí donde debes empezar para saber qué va cargado y tratar de encontrar la solución a ese punto.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #6 (permalink)  
Antiguo 11/04/2008, 20:02
 
Fecha de Ingreso: junio-2007
Mensajes: 27
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Problema guardando variable en Mysql en C++

SOLUCIONADO

la solucion era efectivamente concatenar todos los caracteres, de manera que los parametros a guardar tambien serian concatenados como variables, use el comando strcat, que concatena 2 strings, y asi fui hasta que conclui el query. Gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:04.