Ho un problema con l'update di MYSQL su linguaggio C. Inizialmente scarico tutte le informazioni che mi interessano e il mio programma si mette a lavorare tranquillamente alla fine pero nell'ultimo pezzo di codice dove dopo aver fatto tutte le operazioni devo andare a salavare nel DB mi dice sempre error: 1064
Vi posto il codice così potete meglio rendervi conto:

int query_execute(char *db, char *query, MYSQL *sql){
int cont_occorrenze=0;
MYSQL_RES *res;
MYSQL_ROW row;
MYSQL_FIELD *f;
unsigned int n=0, hj=0;
char *other_query="update movimenti set ip_2='%s' where id_movimento=%d " ;
char query_update[LEN_MAX_QUERY];
memset(query_update, 0x00, LEN_MAX_QUERY);
char *new_ip_2=NULL;
new_ip_2=calloc(LEN_MAX_IP, 1);

//in un altra funzione(precedente a questa) faccio partire la mysql_init e la mysql_real_connect

if (mysql_select_db(sql, db) != 0) //si connette al db
{
printf("\nConnect db error\n");
return EXIT_FAILURE;
}

if (mysql_real_query(sql, query, strlen(query) + 0x1) != 0)
//fa la query "select id_movimenti, ip from Movimenti" e la esegue correttamente
{
printf("Query db error\n");
return EXIT_FAILURE;
}


res = mysql_store_result(sql);

n = mysql_num_fields(res);
f = mysql_fetch_fields(res);

while ((row=mysql_fetch_row(res))) {

new_ip_2=ipWithoutDot(row[1]);

cont_occorrenze = snprintf(query_update, LEN_MAX_QUERY, other_query, new_ip_2, atoi(row[0]));
printf("%s",query_update);
//le stampa correttamente a patto che nn ci sia la funzione successiva ke da un EXIT_FAILURE;


//da Errore 1064 tramite la "hj=mysql_errno(sql)"
//se nn ce questa istruzione tutto il programma funziona correttamente
if (mysql_real_query(sql, query_update, (strlen(query_update))+1 != 0)) {
hj=mysql_errno(sql);
printf("\nQuery db error2: %d\n",hj);
return EXIT_FAILURE;
}
}
}
Ho visto error 1064 ma nn credo sia qlcs che riguarda il codice da me fatto finora....

Vi prego datemi un aiuto ci sto impazzendo 2 giorni a fare prove per far funzionare questo cavolo di istruzione...