Hallo miteinander, leider besteht das Problem immer noch. Die Hinweise wegen dem .toString() sind zwar richtig, doch bis dahin kommt mein Programm ja nicht mal => s.u. Kann das Problem mit ODBC + SapDB zusammenhängen, der Programmcode ist ja aus der Doku kopiert und da denke ich wurde er getestet ? Thomas Wedehase schrieb:
Hallo Am Wednesday, 1. June 2005 11:13 schrieb Gerd König:
Hallo,
if ( defaultDB->open() ) { QSqlQuery query = defaultDB->exec( "SELECT id, name FROM company"); qDebug("no. of affected rows: %d, isValid ? %d, isActive ? %d", query.numRowsAffected(), query.isValid(), query.isActive()); if ( query.isActive() ) { query.first(); qDebug("query is active, at: %d", query.at()); while ( query.next() ) { qDebug("ID:%d, name:%s",query.value(0), query.value(1) );
^^^^^ Vielleicht musst du auch hier noch ein .toString anhänge, da %s einen String verlangt.
Ich hab's mal einfacher getestet: ....->exec("SELECT id from company"); .... .... ....qDebug("ID:%d", query.value(0)); Weil jedoch die query invalid ist komme ich gar nie in die while-Schleife rein (query.next() ist immer false). Aus der Doku zu query.next() entnehme ich somit, daß die Datensätze nicht abgerufen werden können, da .isActive() und .isSelect() beide "true" liefern. ....?? --GERD--