[英]Qt5, C++: QMYSQL driver not loaded
我正在尝试使用带有 Qt 的 MySQL 服务器连接到数据库。 它不起作用,当我运行代码时,我收到以下错误消息。
QSqlDatabase:未加载 QMYSQL 驱动程序
QSqlDatabase:可用驱动程序:QSQLITE QODBC QODBC3 QPSQL QPSQL7 无法连接到数据库检查您的连接详细信息。
在过去的四 (4) 天里,我一直在尝试这个,我不想逃避这个问题。 所以,我真的很感谢任何人的帮助。 我看过几个类似的帖子,但没有一个对我有帮助。 我已将文件 libmysql.dll 和 libmysqld.dll 复制到我能找到的每个可能的 bin 中,但没有一个有效。 我注意到我的错误消息和其他人收到的错误消息有很大不同。 'MYSQL' 甚至没有被列为我得到的错误行中的可用驱动程序之一,如下所示。 那说明什么?
QSqlDatabase:可用驱动程序:QSQLITE QODBC QODBC3 QPSQL QPSQL7
#*******This is my main.cpp file**********
#include <QCoreApplication>
#include <QtSql/QtSql>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
//Adding the i/o stream
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//Creating a database connection
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setUserName("root");
db.setPassword("");
db.setDatabaseName("qtdatabase");
//Testing the connection
if(db.open()) {
cout << "Database connected successfully" << endl;
} else {
cout << "Unable to connect to the database check your connection details." << endl;
}
return a.exec();
}
#********This is my mysqlconnect.pro file**********
QT += core
QT += sql
QT -= gui
CONFIG += c++11 console
TARGET = mysqlconnect
CONFIG -= app_bundle
SOURCES += \
main.cpp
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
win32: LIBS += -L$$PWD/../../../../Users/user/Desktop/lib/ -llibmysql
INCLUDEPATH += $$PWD/../../../../Users/user/Desktop
DEPENDPATH += $$PWD/../../../../Users/user/Desktop
我不知道为什么我有这么大的 Qt 尺寸。 您可以在附加的图像中看到它。 其中一个显示了实际的文件夹大小,当我单击已安装的 Qt 文件夹时,我在文件夹中看到了 5.12.4 和 5.13.0 版本。 这正常吗? 请在此处附上图片。
这意味着QMYSQL插件不可用或无法成功加载。 尝试将QT_DEBUG_PLUGINS 环境变量设置为非零值,并查看可执行文件尝试加载 MySQL 插件时发生的情况。 在大多数情况下,这是因为插件找不到您已经提到的 MySQL 客户端库。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.