Alles rund um die Programmierung mit Qt
Gartenzwerg
Beiträge: 33 Registriert: 19. Oktober 2004 08:10
Beitrag
von Gartenzwerg » 19. Juli 2010 22:48
Hallo,
ich habe erfolgreich diverse SQL-Befehle mittels Qt4 ausführen können.
Jedoch scheint folgender MySQL-Befehl nicht zu funktionieren.
Code: Alles auswählen
QSqlDatabase srcDB = QSqlDatabase::database();
DBQuery srcQuery(srcDB);
srcQuery.prepare(QString("SHOW CREATE TABLE %1").arg(sourceTableName));
if (!srcQuery.exec())
return false;
while(srcQuery.next()) {
qDebug() << "0:" << srcQuery.value(0).toString() << "1:"
<< srcQuery.value(1).toString();
}
Wie ist das zu erklären?
MfG
Gartenzwerg
padreigh
Beiträge: 340 Registriert: 13. Mai 2010 10:06
Beitrag
von padreigh » 19. Juli 2010 23:24
Was soll denn "SHOW CREATE TABLE <tablename>;" deiner Meinung nach bewirken?
Gartenzwerg
Beiträge: 33 Registriert: 19. Oktober 2004 08:10
Beitrag
von Gartenzwerg » 20. Juli 2010 07:14
Mein Ziel ist es eine MySQL-Datenbank mittels Qt in eine SQLite-Datenbank zu konvertieren. Um die Tabellenstruktur zu erhalten wollte ich den MySQL-Befehl "SHOW CREATE TABLE <tabellename>;" einsetzen. Gibt es bessere Möglichkeiten?
MfG
Gartenzwerg
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 20. Juli 2010 07:30
QSqlQuery hat auch ein paar Funktionen zur Fehlerausgabe...
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
upsala
Beiträge: 3946 Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:
Beitrag
von upsala » 20. Juli 2010 09:03
Und da dürfte drinnen stehen, daß prepare und SHOW sich nicht vertragen.
Gartenzwerg
Beiträge: 33 Registriert: 19. Oktober 2004 08:10
Beitrag
von Gartenzwerg » 20. Juli 2010 10:27
@Christian81: da srcQuery.exec() == true, dachte ich, dass es korrekt ausgeführt wird (QSqlQuery::lastError() ist auch leer).
@upsala: korrekt, das ist die Ursache , danke dir
MfG
Sebastian