window环境下编译MYSQL数据库驱动
问题现象
使用Qt提供的数据库驱动列表函数,获取数据库驱动时,没有MYSQL数据库,因此无法正常使用这个数据库
想使用这个数据库,该如何操作呢?以下内容就是实现数据库驱动添加的方法
1.准备数据库软件
step1 在MySQL官网下载MySQL Community Server软件,选择适合自己的版本,我电脑是32位的,所以点这个链接
然后点击这个按钮,开始下载
step2 下载完成后,解压文件,放在一个路径上,需要记住,后面会使用
注意:如果电脑没有安装这个数据库,可以用下载的安装包安装数据库,如果已经安装过mysql数据库,则没必要再次安装了,解压后放个指定位置就可以。
2.检查环境变量
- qmake 的路径一定要加到环境变量中
- 我用的是msvc2017作为编译器,所以还要把下面这个路径增加到环境变量中,否则会报错
要是不加这个路径到环境变量中,编译时就会发生如下错误
3.修改mysql.pro文件
找到下面这个目录,用Qt打开 mysql.pro 文件,这个路径只是参考,主要看Qt安装到什么位置
路径:D:QtQt5.12.105.12.10Srcqtbasesrcpluginssqldriversmysql
然后修改以下内容
#QMAKE_USE += mysql
#该路径是刚才下载解压备用的mysql的头文件路径
INCLUDEPATH +="D:/Qt/mysql-5.7.33-win32/include"
#该路径是刚才下载解压备用的mysql的库文件路径
LIBS +="D:/Qt/mysql-5.7.33-win32/lib/libmysql.lib"
#为了方便查找将来编译好的库文件,添加这个语句用来指明编译后的结果输出的位置
DESTDIR = ../mysql/lib/
4.编译生成mysql.dll文件
上述修改完成后,ctrl+b 开始构建项目,编译完成后,在 mysql 文件中会生成一个新的文件lib
5.配置文件
打开lib文件夹,复制文件qsqlmysql.dll,qsqlmysqld.dll 到下面这个路径中,msvc2017是我用的编译器,如果用的识别的,就把这个名字换成正在使用的编译文件名字。
D:QtQt5.12.105.12.10msvc2017pluginssqldrivers
6.重写获取数据库驱动列表,可以看到QMYsql
使用函数获取数据库驱动列表
// 获取数据库驱动列表
qDebug() << QSqlDatabase::drivers();
得到结果
到此就完成了QMYSQL驱动的添加~~