gpt4 book ai didi

c++ - Qt: QSqlDatabase: QMYSQL 驱动程序未加载

转载 作者:行者123 更新时间:2023-11-29 18:31:45 50 4
gpt4 key购买 nike

我刚刚完成了 QT CRUD 应用程序的开发。我使用 SQLite 将信息本地存储在运行应用程序的磁盘中。这样我的应用程序就可以正常工作了。

但是该应用程序缺少中央数据库服务器。因此,我首先安装 MySql-server 和 MySql-workbench。我在工作台中导入了数据库并确保服务器正在运行。

现在在 Qt 上,我编写了以下几行,使用端口“3306”连接到“localhost”上的服务器,如下所示:

db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setPort(3306);
db.setDatabaseName(databaseName);
db.setUserName(userName);
db.setPassword(userPass);

qDebug() << appDataPath;

if (!db.open()){
return db.lastError().text();
}

但是,我在 QT“Application Outout”上收到以下错误:

QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

我试图确保libmysql.dll位于“C:\Program Files\MySQL\MySQL Server 5.7\lib”..

我也将其复制到“C:\Users\Abubakr\Documents\GitHub\DEBUG\build-Muwassa-Desktop_Qt_5_4_2_MinGW_32bit2-debug”

但它根本不起作用。

请帮忙!!

最佳答案

您需要先自行构建QMYSQL驱动。

当您下载 Qt 时,您还拥有随其提供的源代码。

就我而言,它位于:C:\Qt\5.9\Src\qtbase\src\plugins\sqldrivers\mysql这里有一个 *.pro (这是一种 makefile 生成器)。你只需要用QtCreator打开它,编译它,你就会得到一个dll。该dll是MySQL驱动程序,必须与您的应用程序位于同一目录中。

为此,如果您在编译时遇到问题(例如找不到 mysql.h),则还必须“安装”mysql 库。

在 Linux 中您也可能遇到同样的问题。

关于c++ - Qt: QSqlDatabase: QMYSQL 驱动程序未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45618836/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com