操作系统: win7编译器:mingw4.8(随Qt5.2一起提供)链接到: Fedora版本5,内核2.6.15-1.2054_FC5SMP在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 QMYSQL3 QODBC QODBC3 QPSQL 7“未找到共享库”。驱动程序:(“QSQLITE”、“QMYSQL”、“QMYSQL3”、“QODBC”、“QODBC3”、“QPSQL”、“QPSQL7”) “驱动程序未加载驱动程序未加载”
发布于 2014-01-10 05:03:26
谢谢你的回答,但问题不是我缺少qsqlmysql.dll,但我没有libmysql.dll(看起来这个dll不随win7而来)。
下面是一个视频,它向您展示了如何安装mysql
发布于 2014-01-09 07:43:58
您似乎忽略了Windows上的mysql插件或适当的mysql安装本身,在这种情况下,您需要通过在系统上安装插件QtSql驱动程序可以识别的所有必要的mysql库来完成这一任务。
插件应该可以作为一个dll在plugins/sqldrivers文件夹下使用。您还可以将它放在应用程序旁边的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编译器,请在上面的行中用make替换nmake。
不过,您的代码还有另一个问题。对于mysql数据库,您应该使用"127.0.0.1“而不是"localhost”。
发布于 2014-03-04 11:31:58
我和你一样
解决办法是:
Qt MySQL驱动程序已经在Qt5中了(但不是在以前的版本中!)
您只需要在应用程序exe (或在windows目录下)旁边的"libmysql.dll“!您可以在"libmysql.dll“目录中找到"mysql\mysqlX.X.XX\lib\opt”。
如果Qt MySQL驱动程序找不到libmysql.dll,则错误与找不到驱动程序相同.
下一次的好机会!
https://stackoverflow.com/questions/21011290
复制相似问题