环境
windows10 + Qt 5.13.0 +Qt Creator 4.10.0 + MSVC2017 64位
Qt5.10以上没有qsqlmysql Mysql驱动
解决方法
- 编译X:\Qt\Qt5.13.0\5.13.0\Src\qtbase\src\plugins\sqldrivers\mysql目录下的mysql.pro生成驱动
- 想要编译1中的程序,有个条件
(1) 安装QT时需要勾上Sources,才有X:\Qt\Qt5.13.0\5.13.0\Src\qtbase\src\plugins\sqldrivers\mysql目录下的mysql.pro
(没有的也可以下载解压包 点击)
(2)最新版本、各个历史版本的mysql库 注意对应编译器版本
- MySQL.pro里加上
#该路径是mysql的头文件路径
INCLUDEPATH +="C:/mysql-8.0.17-winx64/include"
#这是MySQL的库文件路径
LIBS +="C:/mysql-8.0.17-winx64/lib/libmysql.lib"
#为了方便查找,不妨增加一条语句,该语句用来指明编译后的结果输出的位置
DESTDIR = ../mysql/lib/
##QMAKE_USE += mysql源码里边有一句这个一定要注释文件截图如下
然后编译
-
编译成功后,将第3步lib文件夹下的所有东西复制到X:\Qt\Qt5.13.0\5.13.0\msvc2017_64\plugins\sqldrivers(根据你的qt目录来)下面
-
将你的mysql安装目录里的libmysql.lib与libmysql.dll复制到X:\Qt\Qt5.13.0\5.13.0\msvc2017_64\bin(根据你的qt目录来)下面,之后你其他的程序连接到mysql数据库时就有mysql库与驱动了
到此已经完成了mysql的驱动.你可以正常使用mysql数据库了.
不同版本的QT需要重新编译