码迷,mamicode.com
首页 > 数据库 > 详细

Qt5.8 下链接 Mysql 错误以及解决方法

时间:2017-04-23 20:46:10      阅读:1628      评论:0      收藏:0      [点我收藏+]

标签:tar   返回   ...   .exe   drivers   网络连接   net   tostring   root   

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 的版本没啥关系哦~~~

我们需要把 /Mysq/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

Qt5.8 下链接 Mysql 错误以及解决方法

标签:tar   返回   ...   .exe   drivers   网络连接   net   tostring   root   

原文地址:http://www.cnblogs.com/hbrw/p/6753849.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!