MySQL "Driver not loaded"

Alles rund um die Programmierung mit Qt
stargazer
Beiträge: 13
Registriert: 22. April 2006 21:12

Beitrag von stargazer »

Der Witz istr, dass der Dependency Walker überhaupt keine qsqlmysql.dll haben will. Alles scheint gut zu sein.
Vielleicht liegt es ja doch am Code oder an den includes?

Doch das mit dem XML ist auch ein Workaround. Wie löst du denn auf deinem Server das PHP Script aus? Also wie macht man das generell?
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

WDDX ... Web Distributed Data Exchange
http://www.openwddx.org/
Kann praktisch mit jede software arbeiten ..
java, python, cfg allaire, asp ... ecc...
und php macht einfach ein array daraus...
http://ch2.php.net/manual/de/ref.wddx.php
wddx_deserialize , wddx_serialize_vars

dann gibt es auch die volle sqlite3 sql dump....
beispiel ....

http://ppk.ciz.ch/qt_c++/db/customers.sql

sogar ganze html seiten kann man reinpacken ..... mit bilder...

Damit alles schoen flach bleibt ... saubere insert
codiere ich zu Base64 im qt4 so...

Code: Alles auswählen

QString encodeBase64( QString xml )
{
    QByteArray text;
    text.append(xml);
    return text.toBase64();
}

QString decodeBase64( QString xml )
{
    QByteArray xcode("");;
    xcode.append(xml);
    QByteArray precode(QByteArray::fromBase64(xcode));
    QString notetxt = precode.data();
    return notetxt;
}
im php
http://ch2.php.net/manual/de/function.base64-decode.php
http://ch2.php.net/manual/de/function.base64-encode.php

die schnellste methode is wddx xml.... mann kann sogar versionieren...
und wenn sie 10 tagen alt sind loeschen...

Ich mag sqlite3 ... einfach weil es super schnell ist .... die odbc oder socket verbindungen holt nicht dass maximum raus aus qt4 ... wenn man ein localhost hat ja.... sonst nur sqlite3....

Und zum testen ist sqlite besser ... wenn mal die datenbank type aendert... muss man ja nur die driver methode umschreiben.... doch nicht das ganze programm... hoechsten ein paar query ...
stargazer
Beiträge: 13
Registriert: 22. April 2006 21:12

Beitrag von stargazer »

Danke für den TIp! Ich werd das mit dem XML Files jetzt machen. Die SQLite DB funktioniert einwandfrei und an der MySQL Sache habe ich jetzt schon zu lange gefummelt, ohne Erfolg.
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

Wenn du dass maximum von sqlite3 rausholen willst...
static libs ...
lese .... http://sourceforge.net/forum/forum.php? ... _id=301849

aus dem http://sqlitebrowser.sourceforge.net/ ist auch qt ...
Dann arbeitet qt mit dieser datenbank als ob es oracle wahre....
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

ich kriegs einfach nicht hin...

- Ich habe das Plugin erstellt wie in diesem Beitrag beschrieben.
- Als libmysql.dll habe ich nur die im mysql verzeichnis.

was muss ich nun machen damit ich den MySQL Treiber laden kann?
Es kann doch nicht so schwer sein...

danke

orlando
lightning.net
Beiträge: 12
Registriert: 24. September 2006 01:46

Beitrag von lightning.net »

Das gleiche Problem habe ich auch:

QT: 4.1.4
IDE: Visual Studio 2005 & QT Integration

mit QSqlDatabase::drivers erhalte ich eine Liste mit : QSQLITE,QODBC3,QODBC, QPSQL7.... -> MYSQL ist offensichtlich nicht dabei.

Weiss Jemand wie man es aktivieren kann. Die qtmysql.dll und qtmysql.lib sind im Order sqldrivers vorhanden.
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

Habe folgenden Eintrang in der Mailingliste gefunden

http://lists.trolltech.com/qt-interest/ ... 407-0.html

könnte ein Ansatz sein.

Gruss

Orlando
lightning.net
Beiträge: 12
Registriert: 24. September 2006 01:46

Beitrag von lightning.net »

oprocopio hat geschrieben:Habe folgenden Eintrang in der Mailingliste gefunden

http://lists.trolltech.com/qt-interest/ ... 407-0.html

könnte ein Ansatz sein.

Gruss

Orlando
Hier hat er das Problem erst auf dem Target Machine. MySQL-Driver wird bei mir auf dem Entwicklungscomputer nicht geladen.
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

hat bei mir auch nichts gebracht...was mir jedoch aufgefallen ist dass in meiner Registry die mysql-Einträge anderst sind.

Versuche sie neu zu kompilieren.
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

habs hingekriegt...war eigentlich gar nicht schwer :D

also:

- qt deinstalliert
- qt-folder gelöscht
- qt neu installiert
- Debug libraries NICHT kompiliert!!
- plugin nach anleitung erstellt
- libmysql.dll in mein app-verzeichniss kopiert
- qsqlmysql.dll in mein app-verzeichnis in unterordner "sqldrivers"

und jetzt funktionierts.
lightning.net
Beiträge: 12
Registriert: 24. September 2006 01:46

Beitrag von lightning.net »

oprocopio hat geschrieben:habs hingekriegt...war eigentlich gar nicht schwer :D

also:

- qt deinstalliert
- qt-folder gelöscht
- qt neu installiert
- Debug libraries NICHT kompiliert!!
- plugin nach anleitung erstellt
- libmysql.dll in mein app-verzeichniss kopiert
- qsqlmysql.dll in mein app-verzeichnis in unterordner "sqldrivers"

und jetzt funktionierts.
Ich hab die Commercial Version, hier muss man nichts kompilieren. Muss ich irgendwie trotzdem plugin erstellen ?
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

sorry....keine ahnung....hast du dein ein qsqlmysql.dll unter plugins\sqldirvers\ ?
lightning.net
Beiträge: 12
Registriert: 24. September 2006 01:46

Beitrag von lightning.net »

Ich habe nur qsqlmysqld.dll, qsqlmysqld.lib, qsqlmysql.dll und qsqlmysql.lib im Ordner.
irgendwie wird es einfach nicht geladen
oprocopio
Beiträge: 32
Registriert: 6. Juni 2005 14:43

Beitrag von oprocopio »

hast du denn MySQL inkl. Libs installiert?
libmysql.dll kommt nur mit mysql mit.

wichtig ist dass die qsqlmysql.dll unter "app-verzeichnis"\sqldrivers\ gespeichert ist und die libmysql.dll im "app-verzeichnis"
lightning.net
Beiträge: 12
Registriert: 24. September 2006 01:46

Beitrag von lightning.net »

Ich wusste nicht dass man MySql auch noch installieren muss. Werde ich mal versuchen
----
Hab mir jetzt mysql include files installiert. libmysql.dll und libmysql.lib hab ich in App-Ordner kopiert. plugins\sqldrivers auch in \app-Ordner kopiert.
MySql wurde auch nicht geladen
Antworten