操作系统:Win7 编译器:mingw4.8(带有Qt5.2) 链接到:Fedora Core版本5,内核2.6.15-1.2054_FC5 SMP在I686

    db = new QSqlDatabase();
    db->addDatabase("QMYSQL");
    db->setHostName("localhost");
    db->setDatabaseName("myclinic");
    db->setUserName("root");
    db->setPassword(",trth12");  

    qDebug() << loader.errorString();
    qDebug() << "drivers: "<< QSqlDatabase::drivers();

    if (db->open())
        qDebug() << "Success!";
    else
        qDebug() << db->lastError().text();
.

消息

qsqldatabase:qmysql驱动程序未加载qsqldatabase:可用 驱动程序:QSQLITE QMYSQL QMYSQL3 Qodbc Qodbc3 QPSQL QPSQL 7“共享 图书馆没有找到。“驱动程序:(“qsqlite”,“qmysql”,“qmysql3”, “Qodbc”,“Qodbc3”,“QPSQL”,“QPSQL7”)

“未加载驱动程序未加载”

有帮助吗?

解决方案 2

谢谢答案,但问题不是因为我缺少qsqlmysql.dll,但我没有libmysql.dll(看起来这个dll不带win7)。

这是一个视频,它向您展示了如何安装mysql

其他提示

似乎缺少Windows上的MySQL插件或正确的MySQL安装本身,在这种情况下,您需要通过在系统上安装所有必要的MySQL库来完成该方法,其中插件QTSQL驱动程序可以识别它。

插件应在插件/ sqldrivers文件夹下作为DLL可用。您还可以将其放入应用程序旁边的SQLDRIVERS文件夹中,因此如此:

- yourapplication.exe
- sqldrivers/qsqlmysql4.dll
.

你需要以某种方式抓住它,或自己建造它。这是文档中如何执行此操作的解释:

如何在Windows上构建Qmysql插件

您需要获取MySQL安装文件。运行setup.exe并选择“自定义安装”。安装“libs&include文件”模块。按如下方式构建插件(此处假设MySQL安装在C:\ MySQL中):

cd %QTDIR%\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MYSQL\MySQL Server <version>\lib\opt\libmysql.lib" mysql.pro
nmake
.

如果您未使用Microsoft编译器,请在上面的行中替换nmake。

您的代码还有另一个问题。您应该使用“127.0.0.1”而不是MySQL数据库的“localhost”。

我有相同的你的pb

解决方案是:

Qt MySQL驱动程序已经在Qt5内(但不在以前的版本!)

你只需要你的应用exe旁边的“libmysql.dll”(或在Windows目录中!)在“mysql \ mysqlx.x.xx \ lib \ opt”目录中找到“libmysql.dll”。

如果qt mysql驱动程序未找到libmysql.dll,则错误与未找到驱动程序的错误...

下一个良好的机会!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top