QT supporto MySQL
Quando si installano le librerie QT o la SDK QT su Windows non tutti i driver per i database sono precompilati mentre su Linux i driver vengono forniti anche in formato binario (già compilati) .
Per abilitare il supporto MySQL per le QT su windows bisogna operare come segue.
- Scaricate l’SDK di QT per Windows dal sito ufficiale per mezzo di questo link QT_SOFTWARE e installatelo .
- Scaricate il MySQL Community Server (MSI Installer) da MySQL e installatelo. Assicuratevi di selezionare gli Header C e le librerie e almeno il client utilizzando l’installazione personalizzata .
- Aprire il Qt Command Prompt dal menu Start.
- Eseguite questi comandi , modificateli se avete installato il vostro MySQL in un path differente. Dovete impostare il path delle librerie MySQL.
Setting up a MinGW/Qt only environment... -- QTDIR set to C:\Qt\2010.02.1\qt -- PATH set to C:\Qt\2010.02.1\qt\bin -- Adding C:\Qt\2010.02.1\bin to PATH -- Adding C:\WINDOWS\System32 to PATH -- QMAKESPEC set to win32-g++ C:\Qt\2010.02.1\qt>set mySQLDIR=C:\PROGRA~1\MySQL\MYSQLS~1.1 C:\Qt\2010.02.1\qt>cd %QTDIR%\src\plugins\sqldrivers\mysql C:\Qt\2010.02.1\qt\src\plugins\sqldrivers\mysql>qmake "INCLUDEPATH+=%mySQLDIR%\include" "LIBS+=%mySQLDIR%\lib\opt\libmysql.lib" -o Makefile mysql.pro C:\Qt\2010.02.1\qt\src\plugins\sqldrivers\mysql>mingw32-make
- Al termine della compilazione dovete copiare libmySQL.dll (che troverete nel direttorio bin della vostra installazione MySQL) nel direttorio C:\WINDOWS.
- Ora avviate QTCreator e create un nuovo progetto C++ per console e modificate il main come sotto. Così potrete provare se il driver MySQL è stato compilato correttamente e se viene riconosciuto dal sistema .
#include <QCoreApplication>
#include <QtSql>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug() << QSqlDatabase::drivers();
return a.exec();
}
Assicuratevi di avere il modulo QtSql nel file di configurazione del progetto(.pro file)
QT += sql
Otterrete l’output che vi riporto sotto dove verrà specificato il supporto QT ai database di cui avete i driver e noi ora avremo ovviamente il supporto a MySQL :
("QSQLITE", "QMYSQL3", "QMYSQL", "QODBC3", "QODBC")
Questo significa che abbiamo il supporto a MySQL,SQLITE e ODBC.
Articolo tradotto da : http://www.pikopong.com/blog/2010/04/11/how-to-enable-mysql-support-in-qt-sdk-for-windows/

