Qt, mysql, openSuse i "driver not loaded"

Odpowiedz Nowy wątek
2011-10-07 10:02
0

Mam problem z polaczeniem sie z baza mysql z qt.

    licensesDatabase.addDatabase("QMYSQL");
    licensesDatabase.setHostName("127.0.0.1");
    licensesDatabase.setPort(3306);
    licensesDatabase.setDatabaseName("...");
    licensesDatabase.setUserName("...");
    licensesDatabase.setPassword("...");

    bool ok = licensesDatabase.open();

    if ( !ok ) {
        QSqlError le(licensesDatabase.lastError());
        qDebug() <<this<<"!FATAL ERROR! : UNABLE TO CONNECT TO DATABASE!!!";
        qDebug() <<this<<"databaseError: "<<le.databaseText();
        qDebug() <<this<<"driverError: "<<le.driverText();
        qDebug() <<this<<"available drivers:"<<licensesDatabase.drivers();
        return 1;
    }

wywala nastepujace bledy:

QTELicenseManagerServer(0x61b3c0) !FATAL ERROR! : UNABLE TO CONNECT TO DATABASE!!!
QTELicenseManagerServer(0x61b3c0) databaseError: "Driver not loaded"
QTELicenseManagerServer(0x61b3c0) driverError: "Driver not loaded"
QTELicenseManagerServer(0x61b3c0) available drivers: ("QSQLITE", "QSQLITE3", "QMYSQL3", "QMYSQL", "QPSQL7", "QPSQL")

Jak widac biblioteka jest QMYSQL zainstalowana.

/usr/lib64/qt4/plugins/sqldrivers> ls -la
total 288
drwxr-xr-x 2 root root 4096 Oct 6 10:07 .
drwxr-xr-x 14 root root 4096 Apr 21 13:23 ..
-rwxr-xr-x 1 root root 69032 Feb 20 2011 libqsqlite3.so
-rwxr-xr-x 1 root root 52576 Feb 19 2011 libqsqlite.so
-rwxr-xr-x 1 root root 77632 Feb 20 2011 libqsqlmysql.so
-rwxr-xr-x 1 root root 85800 Feb 20 2011 libqsqlpsql.so

Ktos ma jakis pomysl dlaczego "Driver not loaded"?


!user image
I am he who watches they. I am the fist of retribution. That which does quell the recalcitrant. Dare you defy the Warchief? Dare you face my merciless judgement?

Pozostało 580 znaków

2011-10-07 11:59
0

dodałeś w projekcie "QT += sql" ?

edytowany 1x, ostatnio: Puchaczov, 2011-10-07 12:00

Pozostało 580 znaków

2011-10-07 12:07
0

No przeciez sie kompiluje, dodalem.


!user image
I am he who watches they. I am the fist of retribution. That which does quell the recalcitrant. Dare you defy the Warchief? Dare you face my merciless judgement?

Pozostało 580 znaków

2011-10-07 13:28
0

Hm....żeby qDebug() <<this<<"available drivers:"<<licensesDatabase.drivers(); nie zwócił na liście QMYSQLa to bym podejrzewał iż ten driver coś krzywo się zbudował.Jednak jakby nadal coś nie banglało to zbuduj owego drivera na swojej maszynie,tak żeby przynajmniej tą ewentualność wykluczyć.
A weź Egon spróbuj wyrzucić z kodu:

licensesDatabase.setDatabaseName("...");
    licensesDatabase.setUserName("...");
    licensesDatabase.setPassword("...");

Kolejna rzecz,upewnij się pod MySQLem że tam masz przynajmniej 1 bazę stworzoną poprzez create database somename,np "dupa".Bo to setDatabaseName("...") tak mi się jakoś niezbyt podoba


"Sugeruję wyobrazić sobie Słońce widziane z orbity Merkurego, a następnie dupę tej wielkości. W takiej właśnie dupie specjalista ma teksty o wspaniałej atmosferze, pracy pełnej wyzwań i tworzeniu innowacyjnych rozwiązań. Pracuje się po to, żeby zarabiać, a z resztą specjalista sobie poradzi we własnym zakresie, nawet jeśli firma mieści się w okopie na granicy obu Korei."
-somekind,
konkretny człowiek-konkretny przekaz :]
edytowany 2x, ostatnio: MasterBLB, 2011-10-07 13:30

Pozostało 580 znaków

2011-10-07 13:29
0

Moze ustawic LD_LIBRARY_PATH odpowiednio?

Path wydaje się być dobry,skoro qDebug mu wypluwa na liście MySqla - MasterBLB 2011-10-07 13:38
Mozliwe, nie mniej jednak, sprawdzilbym dla czystego sumienia ;-) - icek 2011-10-07 13:40

Pozostało 580 znaków

2011-10-07 14:56
0

Dobra sam zalamerzylem :D

zamiast:

    licensesDatabase.addDatabase("QMYSQL");

ma byc:

licensesDatabase = QSqlDatabase::addDatabase("QMYSQL");

Masakra, caly dzien na to zmarnowalem :/


!user image
I am he who watches they. I am the fist of retribution. That which does quell the recalcitrant. Dare you defy the Warchief? Dare you face my merciless judgement?

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0