Seite 1 von 1

ODBC DB mit QSqlDatabase. Wie finde ich Pfad der DB heraus?

Verfasst: 8. März 2010 09:23
von DarkSchwabe
Guten Morgen,

ich habe eine Windows ODBC-Datenbankverbindung welche ich per QSqlDatabase benutze. Das klappt auch ganz gut.

Code: Alles auswählen

 QSqlDatabase sqlDB = QSqlDatabase::addDatabase("QODBC");
 sqlDB.setDatabaseName(databaseName);	

Nun würde ich gerne herausfinden wo die Datenbank liegt. Denn ich will die ganze Datenbank an einen bestimmten Ort kopieren. Eventuell bietet auch die Qt Schnittstelle solch eine Funktionalität, aber bis jetzt habe ich sie nicht gefunden. Darum war mein Plan nun eben ganz normal die Datenbankdatei zu kopieren. Aber dafür brauche ich den Dateipfad um zu wissen wo die DB-Datei nun wirklich liegt.

Geht das irgendwie?
Danke
Gruß

Verfasst: 30. März 2010 08:18
von DarkSchwabe
Hi nochmal,

hat niemand eine Idee wie man das machen kann? Auch bei den C++ Bordmitteln "CDatabase" habe ich nichts passendes gefunden. Aber irgendwie muss das ja gehen, schließlich muss die ODBC Verbindung die Info ja haben.

Gruß

Verfasst: 30. März 2010 11:34
von MichaelS
DarkSchwabe hat geschrieben: Aber irgendwie muss das ja gehen, schließlich muss die ODBC Verbindung die Info ja haben.
Die "ODBC-Verbindung" braucht diese Information nicht, denn sie muss nur wissen, mit welchem ODBC-Treiber Daten ausgetauscht werden sollen. Wie der Treiber diese Daten verarbeitet, ist für die Verbindung völlig egal.

Um dennoch an die Informationen zu kommen, wirst Du wohl die ODBC-API bemühen müssen, die z.B. hier dokumentiert ist:

http://msdn.microsoft.com/en-us/library ... 85%29.aspx

Gruß Michael

Verfasst: 30. März 2010 17:28
von Troll.Soft
MichaelS hat geschrieben: Um dennoch an die Informationen zu kommen, wirst Du wohl die ODBC-API bemühen müssen, die z.B. hier dokumentiert ist:
Zum Glück geht es auch einfacher mit Qt-Bordmitteln.

Code: Alles auswählen

	QSettings	Registry(QSettings::UserScope, "ODBC", "ODBC.INI", NULL);
	qDebug() << Registry.value("Access/DBQ");
"Access" ist in diesem Beispiel der Datenquellenname, kann bei Dir natürlich anders sein.

viel Erfolg
Troll.Soft

Verfasst: 31. März 2010 12:11
von DarkSchwabe
hey, vielen Dank.
Mit QSettings funktionierts wunderbar. Man muss halt wissen wo die Infos stehen ;-)

Vielen Dank!
Gruß