2011-12-20 192 views
2

我試圖連接到運行在Windows的MySQL數據庫,我使用的XAMPP 我用這個代碼連接到數據庫QT MYSQL連接不工作

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); 
db.setHostName("127.0.0.1"); 
db.setDatabaseName("opencart"); 
db.setUserName("root"); 
db.setPassword(""); 
db.open(); 

它打印以下錯誤消息

QSqlDatabase: QMYSQL driver not loaded 
QSqlDatabase: available drivers: QSQLITE 

我還添加了QT + = SQL,當我嘗試打印驅動程序:

qDebug()<<QSqlDatabase::drivers();//("QSQLITE") 

如何建立mysql數據庫連接

回答

2

默認情況下,只有Sqlite驅動程序被編譯。

檢查您的{QT_DIR} \ plugins \ sqldrivers文件夾。

如果不存在,只需轉到{QTDIR} \ src \ plugins \ sqldrivers \ mysql並執行通常的qmake,nmake,nmake install。

您需要將.dll複製到應用程序的目錄或Windows查找dll的位置。

+0

什麼是平常qmake,nmake ??你可以請更多的sp1爲 –

+0

假設你有Qt的源代碼,你會進入我說的文件夾。運行qmake,然後nmake來構建dll。我不想粗魯,但你應該知道qmake和nmake是什麼。 –

+0

當然我知道qmake和nmake大聲笑 –

0

如果你想在MySQL中使用QSqlDatabase,你首先必須爲Qt創建一個MySQL驅動程序。但Qt在這個問題上的文檔不是很清楚!

您應該檢查這個link for Qt 4.7.xthis link for Qt5

這些都是一步一步的教程如何安裝驅動程序!