Qt5.8 下链接 Mysql 错误以及解决方法
Posted 朝闻道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt5.8 下链接 Mysql 错误以及解决方法相关的知识,希望对你有一定的参考价值。
Qt 5.8 下链接 mysql(Windows 平台下),有朋友会出现一个这个无法连接的错误
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
解决办法如下
根据 Qt版本不同 ,32 和 64 的 ,需要的驱动是不同的,总的来说,无论 Mysql 是什么版本的,64 位 Qt 要用 64 位的 Mysql 驱动,32 位的 Qt 要用 32 位的Mysql 驱动,貌似跟安装的 Mysql 的版本没啥关系哦~~~
我们需要把 /Mysql/lib (自己的 Mysql 安装目录在哪儿自己找)目录下的 libmysql.dll 拷贝到 / Qt/mingw53_32/bin 目录下面就可以了哦。
测试代码如下:
QSqlDatabase dbconn;
QSqlQuery query;
dbconn = QSqlDatabase::addDatabase("QMYSQL");
dbconn.setHostName("localhost");//主机名字
dbconn.setDatabaseName("Since");//数据库名字
dbconn.open("root", "123456");//用户名、密码,成功返回1
query = (QSqlQuery)dbconn;
query.exec("select * from first");
while(query.next())
{
int id = query.value(0).toInt();
QString name = query.value(1).toString();
qDebug() << QString::number(id) + " : "+ name;
}
测试结果为:
Starting E:\\since2017\\Testmysql\\release\\Testmysql.exe...
"0 : Since"
"1 : Never"
在进行 MySQL 操作之前,请确保 MySQL 服务已经开启了哦,个别博客还强点在安装 MySQL 的时候要开启网络连接,不知道有没有必要,可能远程连接的时候需要吧~~~
感谢这位博友给我的启发,如对链接 MySQL 这个还有疑问可以参考这位朋友的博客哦
http://blog.csdn.net/cateatapple/article/details/52279168
http://www.cnblogs.com/hbrw/p/6753849.html
以上是关于Qt5.8 下链接 Mysql 错误以及解决方法的主要内容,如果未能解决你的问题,请参考以下文章
qt5.8 链接mysql错误:driver not load
MySQL远程连接时出现10061以及1045错误时的解决方法
错误:MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hos(代
已解决使用Navicat连接MySQL数据库时报错Client does not support authentication protocol requested by server; cons(代
Navicate连接MySQL出现2059-Authentication plugin 'caching_sha2_password' cannot be loaded:的解决方案(代