Anzahl der Datensätze ausgeben (SQL)
-
Hi,
ich versuche gerade eine Datenbank in mein MFC-Projekt einzubinden.
Da ich in einer Funktion die Anzahl der Datensätze in table_1 benötige, dachte ich wie folgt vorgehen zu können.
Leider führt dieser Weg nicht zum gewünschten Ergebnis, sondern gibt mir eine 0 aus.
In der Datenbank sind jedoch def. 11 Datensätze hinterlegt (Zeilen)sqlite3_open("Database\\database.db", &db); int rc=sqlite3_exec(db, "SELECT COUNT(*) FROM table_1;", 0, 0, &db_err); sqlite3_close(db);
Kann mir vielleicht jemand weiterhelfen ??
Gruß Se33l
-
sqlite3_exec(db, "SELECT COUNT(*) FROM table_1;", length_callback, &total_rows, &db_err);
1. kein seminkolon!
2. total_rows
-
mhh..
leider funktioniert das Ganze noch nicht..
wahrscheinlich mache ich noch irgendetwas falsch.*.h
sqlite3_callback length_callback; int total_rows;
*.cpp
sqlite3_open("Database\\database.db", &db); sqlite3_exec(db, "SELECT COUNT(*) FROM table_1",length_callback, &total_rows, &db_err); sqlite3_close(db);
-
Was gibt es denn für einen Fehler?
Compilerfehler oder Fehler in der Ausführung?Bei letzterem wäre die Prüfung bei db bzw. db_err auch hilfreich für dich,den Fehler zu ermitteln!
-
Es handelt sich um einen Fehler in der Ausführung.
Programmfehler bei legacy.c
if( xCallback(pArg, nCol, azVals, azCols) ){ rc = SQLITE_ABORT; goto exec_out;
in db und db_err steht <Schlechtes Ptr>
-
Dann ist wohl einer der Zeiger die Du übergibst falsch. Ich tippe mal auf sqlite3_callback length_callback;
Vielleicht solltest Du noch mal etwas lesen:
http://www.sqlite.org/quickstart.html