Seite 1 von 1

Datenbankzugriff für .accdb Dateien

Verfasst: 22. Februar 2012 14:48
von timo_81
Werte Qt-Gemeinde,

ich versuche gerade eine Verbindung mit Qt4.8 unter Mac OSX zu einer .accdb Datenbank aufzubauen.
Mein Code ist wie folgt:

Code: Alles auswählen

   QSqlDatabase _db = QSqlDatabase::addDatabase("QODBC");

    QString databaseName = "DRIVER={Microsoft Access Driver (*.accdb)};FIL={MS Access};DBQ=/Users/schweito/Desktop/Code/Rechungsassistent/firma.accdb";
    _db.setDatabaseName(databaseName);

    if(!_db.open())
    {
    _db.setConnectOptions();
    qDebug() <<"Fehler!";
    qDebug() << _db.lastError();
    qDebug() << _db.drivers();
    qDebug() << QCoreApplication::libraryPaths();
    }
    else
    qDebug() <<"Geht!";
}


Die Fehlermeldung lautet:
QSqlError(0, "QODBC3: Unable to connect", "[iODBC][Driver Manager]dlopen({Microsoft Access Driver (*.accdb)}, 6): image not found [iODBC][Driver Manager]Specified driver could not be loaded")

db.drivers ergibt ("QSQLITE", "QODBC3", "QODBC", "QPSQL7", "QPSQL")
("/usr/local/Cellar/qt/4.8.0/plugins", "/Users/schweito/Desktop/Code/Rechungsassistent/Rechungsassistent.app/Contents/MacOS")

Das müsste doch bedeuten, dass der Treiber vorhanden ist und benutzt werden kann, oder?

Re: Datenbankzugriff für .accdb Dateien

Verfasst: 22. Februar 2012 16:20
von softwaremaker
Du brauchst aber noch den ODBC-Treiber für Microsoft Access auf deinem Mac.
Qt kann durch QODBC auf ODBC-Treiber zugreifen, jedoch hast du für .accdb keinen installiert.
Ich weiss leider nicht wo man diesen herbekommt bzw. ob es einen gibt (MS Access für MacOS ?).

Re: Datenbankzugriff für .accdb Dateien

Verfasst: 22. Februar 2012 17:03
von timo_81
Vielen Dank für die schnelle Antwort!