
problema con actualizacion desde c++
Publicado por Gisela (5 intervenciones) el 01/02/2010 12:03:47
Hola, estoy realizando mi tesis en c++ builder 6 conectado con una base de datos en mysql, y se me presento un problema al tratar de hacer un update en una tabla de la base de datos.
aca copio la parte de codigo que no me funciona,
int numf,i,dias;
Cerdo C;
bool valor;
MYSQL_ROW row;
MYSQL_RES *res;
String ide=305;
MYSQL *mydata=C.conexion_bd(valor);
char *cons;
char consulta[]="update alojamiento set Activa='N' where ID= \'%s\'";
if(valor==true)
{
if (!(mysql_query(mydata,"Select ID,Activa,Fecha_entrada from alojamiento"))) //ESTA PARTE SI FUNCIONA, LO COMPROBE
{
res = mysql_use_result(mydata);
if (res)
{
int numf = mysql_num_fields(res);
row = mysql_fetch_row(res);
while (row)
{
for (i=0;i<numf;i++)
{ String ide=row[0];
String val="S";
String fil=row[1];
if (i==0)
{ cons=new char[strlen(consulta)+strlen(ide.c_str())-1];
sprintf(cons,consulta,ide);
mysql_query(mydata,cons); //ESTA PARTE NO SE ESTA REALIZANDO, DENTRO DE ESTA PARTE DEL CODIGO PERO SI FUNCIONA SI NO LO HAGO DENTRO DEL IF MAYOR
}
}
row = mysql_fetch_row(res);
}
}
agradezco a quien me pueda ayudar porque he intentado de mil formas y no consigo que funcione.
muchas gracias
Aclaracion: este codigo lo ejecuto dento del evento oncreate del formulario principal..
aca copio la parte de codigo que no me funciona,
int numf,i,dias;
Cerdo C;
bool valor;
MYSQL_ROW row;
MYSQL_RES *res;
String ide=305;
MYSQL *mydata=C.conexion_bd(valor);
char *cons;
char consulta[]="update alojamiento set Activa='N' where ID= \'%s\'";
if(valor==true)
{
if (!(mysql_query(mydata,"Select ID,Activa,Fecha_entrada from alojamiento"))) //ESTA PARTE SI FUNCIONA, LO COMPROBE
{
res = mysql_use_result(mydata);
if (res)
{
int numf = mysql_num_fields(res);
row = mysql_fetch_row(res);
while (row)
{
for (i=0;i<numf;i++)
{ String ide=row[0];
String val="S";
String fil=row[1];
if (i==0)
{ cons=new char[strlen(consulta)+strlen(ide.c_str())-1];
sprintf(cons,consulta,ide);
mysql_query(mydata,cons); //ESTA PARTE NO SE ESTA REALIZANDO, DENTRO DE ESTA PARTE DEL CODIGO PERO SI FUNCIONA SI NO LO HAGO DENTRO DEL IF MAYOR
}
}
row = mysql_fetch_row(res);
}
}
agradezco a quien me pueda ayudar porque he intentado de mil formas y no consigo que funcione.
muchas gracias
Aclaracion: este codigo lo ejecuto dento del evento oncreate del formulario principal..
Valora esta pregunta


0