Qt连接mysql数据库遇到QMYSQL driver not loaded
本文件向各位博友分享一下我在Qt开发过程中,连接mysql数据库时遇到的问题,以及解决的方法,希望对遇到同样问题的博友有所帮助。
工程运行环境:vs2015+Qt5.8
在开发过程中,编写数据库连接函数,然后运行代码,报以下错误:
QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
数据库连接代码整理如下:
#include "mysql.h"
bool RegisteredUi::ConnectMysql()
{
QString ipaddress = "127.0.0.1";
QSqlDatabase m_db = QSqlDatabase::addDatabase("QMYSQL"); //数据库类型
m_db.setHostName(ipaddress); //内网IP"192.168.1.108" //主机名localhost192.168.0.142
m_db.setDatabaseName("Original_Records"); //数据库名称Original Records
m_db.setPort(3306);
m_db.setUserName("root"); //用户名
m_db.setPassword("password"); //密码
if (!m_db.open())
{
QMessageBox::information(0, "连接失败",
"请确定网络是否连接正常,或者mysql服务器的IP是否有效!",
QMessageBox::Cancel);
return false;
}
else
{
QMessageBox::information(this, "连接成功", "mysql 数据库连接成功 !");
return true;
}
}
解决方法:
1.先安装mysql数据库,确保数据库安装成功
2.提示mysql.h源文件找不到,解决方法如下:
#include "mysql.h" //添加mysql.h头文件编译提示
解决方法:
1. 将mysql安装目录下的C:\Program Files\MySQL\MySQL Server 8.0文件夹下的include文件夹拷贝到工程文件夹下,如下图:
2. 然后右击工程,属性-》c/c++常规,将include添加到附加包含目录中,如下图所示:
添加完成如下图所示:
点击确定,应用重新编译工程,刚刚报错提示找不到mysql.h源文件的错误消失了,然后realse编译代码,发现还是会报同样的错误,解决方法与debug模式的解决一样。
2. 编译虽然通过了,但是运行过程中会有如下提示:
Qt VS Tools: QML debug: Debugging project 'OriginalRecord'...
Qt VS Tools: QML debug: DISABLED: QML debugging disabled in Qt project settings
解决方法如下:
将mysql安装目录C:\Program Files\MySQL\MySQL Server 8.0下的lib文件夹拷贝到工程项目下,如下图所示:
点击项目右键-》属性-》链接器-》找到附加库目录,将lib文件添加进去,如下图所示:
添加成功后如下图所示:
找到链接器下的输入-》附加依赖项,然后将需要的xx.lib文件添加进去,如下图所示:
mysql需要的lib文件有libmysql.lib和mysqlclient.lib两个,添加后如下图所示:
添加完成之后重新编译项目,运行程序还是会有相同的提示:是因为与mysql有关的xx.dll文件没有添加到工程中。
添加拷贝libmysql.dll文件到工程同级目录下的x64文件夹中的debug和release文件中。也可以直接拷贝到C:\Windows\System32下面
写的不好,希望见谅,希望能够帮组有需要的博友解决问题。
如果以上还没有解决,将mysql安装目录下C:\Program Files\MySQL\MySQL Server 8.0\bin的libeay32.dll,ssleay32.dll,libmecab.dll文件拷贝到工程同级目录下的x64文件夹中的debug和release文件中。
Qt连接mysql数据库遇到QMYSQL driver not loaded的更多相关文章
- fedora 18~20 中Qt 5.2.1 解决连接mysql数据库出现QMYSQL driver not loaded的问题
QT += sql //在.pro文件里加入这一句 //包含头文件 #include <QDebug> #include <QSqlQuery> #include ...
- Ubuntu12.04下Qt连接MySQL数据库
本文介绍在Ubuntu12.04 (64 bit) 下使用Qt 4.8.2连接MySQL(Ver 14.14 Distrib 5.5.43)数据库. 1.安装 Qt 和 MySQL 若未安装以上软件, ...
- Qt 连接MySQL数据库(很多相关文章)
今天想试试Qt如何连接数据库的. 谁知怎么写完了提示driver not loaded我就郁闷了. 我自己是 VS2010 + Qt4.8.4 + MySQL5.1 的环境 网上查到是 C:\Qt\4 ...
- qt连接mysql数据库实例
qt5.2版本已经封装进去了mysql驱动,所以省去了我们现编译的麻烦!!! #include <QCoreApplication> #include <QDebug> #in ...
- Windows下Qt连接MySql数据库
1.设置环境变量,需添加如下的环境变量: 2.打开Qt Command Prompt,输入第一条命令:cd %QTDIR%\src\plugins\sqldrivers\mysql 后按回车 ...
- QT5 - 数据库、QMYSQL driver not loaded
第一步.先在“.pro”的入口文件里加入以下两行代码: QT += sql SOURCES += main.cpp 第二步.在“main.cpp”文件中连接数据库并判断是否连接成功 1.QPSQL连接 ...
- Linux系统下 解决Qt5无法连接MySQL数据库的方法
Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get instal ...
- CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)
用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r ...
- QT5.8连接Mysql提示QMYSQL driver not loaded
我们都知道在QT5.8系列里已经带了Mysql的dll文件 驱动的名字为“qsqlmysql.dll”和“qsqlmysqld.dll” 但是按照网上的各种教程和博客基本都是错的,只有个别人是对的. ...
随机推荐
- 2.7.2 元素定位:frame 内定位 driver.switch_to.frame()
来源: http://blog.csdn.net/anniejunyan/article/details/23257327 Selenium + Webdriver 学习(五) frame下元素定位 ...
- [C#] 委托与匿名方法
using System; namespace 匿名函数 { class Program { delegate void TestDelegate(string s); static void M(s ...
- opencv:自适应阈值
#include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace st ...
- gbase安装教程
一.安装前的准备工作 1.对网卡进行配置 [root@gbase8a ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADD ...
- 短网址(t.cn、url.cn)生成,网址缩短接口API
简要说明 短网址api接口有很多格式,不同的接口生成的短网址格式也不同,比如常见的t.cn.url.cn.w.url.cn等格式.总而言之短网址接口就是用来将一个冗长的链接缩短成10个字符以内的短链接 ...
- 分享链接在QQ内总是被多人举报怎么办,域名防红的方案
背景 相信大家经常会遇到一个头疼的问题就是,自己的推广链接会因多人投诉举报导致链接在QQ内转发分享会被QQ管家拦截,用户无法打开访问的问题. 那么当大家遇到这个问题的时候应该怎么办呢?不用急,下面分享 ...
- Nuxt 环境搭建已经编写第一个Nuxt应用
在学习Nuxt 之前 首先我们要有node ,然后因为Nuxt 是一个基于 Vue.js 的轻量级应用框架,所以在开发之前需要安装(后面纯属作者猜想并且猜想就是这个原因...) npm install ...
- python在线测试代码及教程
python/Java在线测试代码:http://www.pythontutor.com/visualize.html#mode=edit廖雪峰Python教学:https://www.liaoxue ...
- 【Python】一些函数
Python 数字类型转换 有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可. int(x) 将x转换为一个整数. float(x) 将x转换到一个浮点数. ...
- iOS开发之使用 infer静态代码扫描工具
infer是Facebook 的 Infer 是一个静态分析工具.可以分析 Objective-C, Java 或者 C 代码,报告潜在的问题. 任何人都可以使用 infer 检测应用,可以将严重的 ...