Hallo zusammen,
Ich versuche gerade mit dem Arduino eine Mysql datenbank auszulesen und das ergebniss in Serial.Print auszugeben.
Dies funktioniert wie folgt auch einwandfrei:
// Initiate the query class instance
MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);
// Execute the query
Serial.println("Lese Datenbank aus");
cur_mem->execute(select_query);
// Fetch the columns and print them
column_names *cols = cur_mem->get_columns();
for (int f = 0; f < cols->num_fields; f++) {
Serial.print(cols->fields[f]->name);
if (f < cols->num_fields-1) {
Serial.print(", ");
}
}
Serial.println();
// Read the rows and print them
row_values *row = NULL;
do {
row = cur_mem->get_next_row();
if (row != NULL) {
for (int f = 0; f < cols->num_fields; f++) {
Serial.print(row->values[f]);
if (f < cols->num_fields-1) {
Serial.print(", ");
}
}
Serial.println();
}
} while (row != NULL);
Nun würde ich gerne die row[1] einzeln ausgeben(zusätzlich zu den ganzen ergebniss). was muss ich da ändern
Kann mir jemand helfen?
Das verstehe ich jetzt nicht. Die Row[1] wird doch ausgegebeben, wenn sie existiert.
Evtl. solltest Du über die Where-Clausel Deiner SQL-Abfrage nachdenken, wenn Du nur eine bestimmte Zeile brauchst.
Gruß Tommy
Ja die wird ausgegeben mit allen anderen in der abfrage.... aber ich möchte NUR die Row 1 ausgeben bez. in einen String schriben und da scheitere ich
Dann solltest Du Dich mit den Grundlagen von SQL beschäftigen. Where ist Dein Freund.
Gruß Tommy
Hi
Ich denke,
row->values[f]
gibt Dir den aktuellen Spalteninhalt zurück - Das müsstest Du aber wesentlich besser wissen, als ich, da Du den Code vor Dir hast und Das sogar an Deiner DB testen kannst.
Wo kommt Dein Datensatz her? Also in diesem Sketch, wo werden die Inhalte ausgegeben?
Dort wirst Du erkennen können, wie auf die Inhalte zugegriffen wird.
Wenn durch eine fortlaufende Variable auf die verschiedenen Inhalte eines Datensatz zugegriffen wird, musst Du prüfen, ob 'Das jetzt gerade' Dein gesuchter Inhalt ist und Diesen zwischenspeichern, um Das danach noch ausgeben zu können, wenn wir schon 'ganz wo anders' wieder am Lesen sind.
MfG
Tommy56:
Dann solltest Du Dich mit den Grundlagen von SQL beschäftigen. Where ist Dein Freund.
Ja, WHERE und LIMIT dürfte helfen. Google oder eine andere Suchmaschine darf der TO gerne selbst bemühen.
Da können wir nicht mal helfen wenn wir wollten, da die Abfrage ja geheim ist...
Gruß, Jürgen