qt mysql不同位_Qt5.8 下链接 Mysql 错误以及解决方法(无论 Mysql 是什么版本的,64 位 Qt 要用 64 位的 Mysql 驱动,32 位的 Qt 要用 32 位的Mysq...

在Windows上使用Qt 5.8连接MySQL时,可能会遇到QMYSQL驱动未加载的问题。解决方法是确保Qt和MySQL驱动的位数匹配,即64位Qt对应64位MySQL驱动,32位Qt对应32位MySQL驱动。将libmysql.dll文件从MySQL的lib目录复制到Qt的mingw53_32/bin目录下。测试代码显示连接成功并能执行查询操作。确保MySQL服务已启动是连接前的基本步骤。
摘要由CSDN通过智能技术生成

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://www.cnblogs.com/hbrw/p/6753849.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值