連接mysql示例代碼
#include <QCoreApplication>
#include <QtSql>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("test");
db.setUserName("test");
db.setPassword("xxxxxxxxxx");
bool ok = db.open();
qDebug() << ok;
db.close();
return a.exec();
}
提示
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE
但是人家的錯誤都提示這個
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7
爲毛我可用的驅動只有一個,而人家的卻又好多個,而且我的mysql驅動爲什麼沒有
我之前按照一個人的 做法,將qt4中的libsqlmysql.so(mysql驅動文件)複製到了/usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers下面
然後就出現上面的問題,連接不上,而且不顯示我有mysql數據庫
於是我直接從這裏獲得了最新的mysql驅動
https://apps.ubuntu.com/cat/applications/raring/libqt5sql5-mysql/
這下成功了
運行上面的代碼
Starting /home/reddusty/workspace/qt/build-database-Desktop-Debug/database...
available drivers:
"QSQLITE"
"QMYSQL"
"QMYSQL3"
Ok