ROW AUSLESEN



  • Hallo - Kurze Frage,

    Ich lese eine mySQL-Table aus (c++) und habe folgendes Problem ....

    MYSQL_ROW row;
    dann ne while Schleife solange noch werte kommen ...
    iNumber = atoi(row[i]); //zb Zahlen einlesen

    Problem: Falls row[i] KEINE Daten beinhaltet -> Segmentation fault (core dumped)

    Wie kann ich row[i] vorher überprüfen? Wie kann ich feststellen, ob überhaupt „ETWAS“ drin ist (Int, double)???

    Mit freundlichen Grüßen
    david



  • Row ist doch die Zeile. Da weiß man doch eigentlich, wieviele Spalten man im Select stehen hat?!? BZW wieviele die Tabelle hat...
    Sonst: mysql_num_fields()

    Falls du die Anzahl der Zeilen des Ergebnis haben willst musst du durch das result iterieren und dir jeweils die row ausgeben:

    MYSQL_RESULT* result= //query hier! SELECT a,b,c FROM d;
    MYSQL_ROW row;
    while(result != NULL && (row=mysql_fetch_row(result))!=NULL) {
    // row[0] => a
    // row[1] => b
    // row[2] => c
    }
    

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

    mfg
    xXx


Anmelden zum Antworten