Mysql
 sql >> Database >  >> RDS >> Mysql

Come si salva il risultato di una query MySQL in una variabile in c

risposta breve:

int i = atoi(row[0]);

risposta lunga:

http://dev.mysql.com/doc /refman/5.0/en/mysql-fetch-row.html

Restituisce un MYSQL_ROW. È quindi necessario scorrere la riga per ottenere ogni valore. Questi valori sono stringhe, quindi dovrai convertirli in int con atoi() . Questo è dimostrato nel codice seguente (tranne atoi() call) rubato spudoratamente dal link sopra:

MYSQL_ROW row;
unsigned int num_fields;
unsigned int i;

num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
   unsigned long *lengths;
   lengths = mysql_fetch_lengths(result);
   for(i = 0; i < num_fields; i++)
   {
       printf("[%.*s] ", (int) lengths[i],
              row[i] ? row[i] : "NULL");
   }
   printf("\n");
}