Código:
#include <iostream> #include <mysql.h> using namespace std; int main(int argc, char** argv) { MYSQL *conexion; MYSQL_RES *result; MYSQL_ROW row; //MYSQL_FIELD *fields; unsigned int num_fields=0,i=0; my_ulonglong num_rows; const char *consulta = "SELECT id,name,phone,email FROM users"; conexion = mysql_init(NULL); if (!mysql_real_connect(conexion, "iphost", "user", "pass", "database", 0, NULL, 0)){ cout<<stderr<<" Failed to connect to database: Error: "; cout<<endl<<mysql_error(conexion); } //if (mysql_real_query(conexion, consulta,strlen(consulta))!=0){ if (mysql_query(conexion, consulta)!=0){ cout<<"Error: mysql_real_query ha fallado en la consulta:" cout<<consulta<<endl; } result = mysql_store_result(conexion); if (result){ //Hay filas que devolver num_fields = mysql_field_count(conexion); num_rows = mysql_num_rows(result); while(i<25){ i++; cout<<i<<endl; } int j=0; while(row = mysql_fetch_row(result)){ j++; cout<<"La fila es "<<j<<endl; } while(i<50){ i++; cout<<i<<endl; } mysql_free_result(result); } else { if (mysql_errno(conexion)){ cout<<stderr<<"Error: " cout<<mysql_error(conexion)<<endl; } else if (mysql_field_count(conexion) == 0){ // El query no ha devuelto nada cout<<"El query no ha devuelto nada"; } } mysql_close(conexion); return 0; }
y el código de salida es:
Código:
tengo un problema en la línea while (row = mysql_fetch_row(result))1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 La fila es 4199291 La fila es 2280744 La fila es 1628938179 La fila es 1629738798 La fila es 1629738792 La fila es 1629738793 La fila es 1629738794 /cygdrive/C/Program Files/NetBeans 6.9.1/ide/bin/nativeexecution/dorun.sh: line 33: 4068 Segmentation fault (core dumped) sh "${SHFILE}" Press [Enter] to close the terminal ...
pero no entiendo que le puede pasar para que me haga eso con la variable j, que es un simple entero, estoy desquiciado, necesitro vuestra ayuda!!
Muchas gracias