[英]QT : QSqlDatabase: QMYSQL driver not loaded [WINDOWS]
萨拉姆·阿里科姆
大家好
我正在尝试创建一个 QT 接口来连接到 MYSQL 数据库,但它总是出现错误
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7
这是我的代码
QSqlDatabase db1 = QSqlDatabase::addDatabase("QMYSQL");
db1.setHostName("localhost");
db1.setUserName("root");
db1.setPassword("");
db1.setDatabaseName("journal_machine");
我尝试了一些解决方案,但没有用
这是我的配置
QT 创作者 2.8.1
QT 5.1.1 (MSVC2010, 32 位)
视窗 10 64 位
MySQL 5.6.17 安装了 WampServer 2.5(64 位)
提前致谢
现在回答为时已晚,但这可能对未来的读者有用。
对于项目工具包 64 位使用MySql 64 位,对于项目工具包 32 位使用MySql 32 位。
注意:xx:64 或 32
qsqlmysql.dll
和qsqlmysqld.dll
文件应该存在于<QtDir>\\mingw73_xx\\plugins\\sqldrivers
文件夹中。
libqsqlmysql.a
和libqsqlmysqld.a
文件应该存在于<QtDir>\\mingw73_xx\\lib
文件夹中。
libmysql.dll 文件应该存在于<QtDir>\\mingw73_xx\\bin
文件夹中。
现在,您可以构建您的项目。
// 评论:
如果“QMYSQL 驱动程序未加载”错误仍然存在,请按照仪器操作:
将 MySql 文件夹从 Program Files 复制到一个简单的路径。 (例如:“D:/MySQL”)
转到“\\Src\\qtbase\\src\\plugins\\sqldrivers\\mysql”文件夹
以文本形式打开 mysql.pro。
使用“#”注释QMAKE_USE += mysql
行。 ( #QMAKE_USE += mysql
)
在这之后添加以下几行:
LIBS += 'D:/MySQL/lib/libmysql.lib'
INCLUDEPATH += 'D:/MySQL/include'
DEPENDPATH += 'D:/MySQL/include'
保存文件。
从开始菜单打开Qt 5.13.1 (MinGW 7.3.0 xx-bit).exe
(例如)。
转到<QtDir>\\Src\\qtbase\\src\\plugins\\sqldrivers
文件夹(使用 'cd' 命令)。
使用qmake mysql.pro
命令。
使用mingw32-make
命令。
如果编译成功,进入<QtDir>\\Src\\qtbase\\src\\plugins\\sqldrivers\\plugins\\sqldrivers
文件夹。
将qsqlmysql.dll
和qsqlmysqld.dll
文件复制到<QtDir>\\mingw73_xx\\plugins\\sqldrivers
文件夹中。
将libqsqlmysql.a
和libqsqlmysqld.a
文件复制到<QtDir>\\mingw73_xx\\lib
文件夹中。
// 评论:
如果错误仍然存在,请按照仪器操作:
<MySQL Connector C 6.1 Dir>\\bin
文件夹。libmysql.dll
文件复制到<QtDir>\\mingw73_xx\\bin
文件夹中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.