深圳营销型网站推广,口碑营销公司,wordpress 重新生成缩略图,免费网站在哪下载Qt安装MYSQL驱动
1 Qt配置MySQL驱动
在使用Qt连接数据库前需要确定当前Qt支持的数据库驱动模块有哪些。
1.1 Qt数据库驱动
Qt SQL模块是Qt提供的一个访问数据库的接口#xff0c;支持多种平台下使用不同类型的数据库#xff0c;在这个过程中#xff0c;数据库驱动负责与…Qt安装MYSQL驱动
1 Qt配置MySQL驱动
在使用Qt连接数据库前需要确定当前Qt支持的数据库驱动模块有哪些。
1.1 Qt数据库驱动
Qt SQL模块是Qt提供的一个访问数据库的接口支持多种平台下使用不同类型的数据库在这个过程中数据库驱动负责与不同的数据库进行通信。
1.1.1 Qt支持的数据库驱动
QDB2、QIBASE、QMYSQL、QOCI、QODBC、QPSQL、QSQLITE2、QSQLITE、QTDS
1.1.2 如何查看当前版本Qt所支持的数据库驱动
新建项目在.pro文件中添加 QT sql在.cpp文件中添加如下代码 qDebug() QSqlDatabase::drivers();运行程序在 应用程序输出栏 中观察结果
2 安装MYSQL驱动 – MinGW编译器
2.1 下载MYSQL
https://dev.mysql.com/downloads/mysql/
将MySQL的环境C:\Program Files\MySQL\MySQL Server 8.1\bin添加到环境变量中。
2.2 拷贝libmysql.dll和libmysql.lib文件
1打开MySQL的安装目录下的lib文件夹如C:\Program Files\MySQL\MySQL Server 8.1\lib 2将该文件夹下的libmysql.dll和libmysql.lib文件拷贝到Qt的MinGW编译器的bin文件夹下如F:\QT\5.12.6\mingw73_64\bin
2.3 编译qsqlmysql.dll文件
1需要利用QT的源码进行编译在QT安装时需要选择 Source 来选择安装源码此时在QT目录下可以找到 Src 文件夹 2进入 Qt安装目录Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql 文件夹打开 mysql.pro 文件进行修改
TARGET qsqlmysqlHEADERS $$PWD/qsql_mysql_p.h
SOURCES $$PWD/qsql_mysql.cpp $$PWD/main.cpp#QMAKE_USE mysqlOTHER_FILES mysql.jsonPLUGIN_CLASS_NAME QMYSQLDriverPlugin#mysql的lib路径
LIBS -L$$quote(C:/Program Files/MySQL/MySQL Server 8.1/lib) -llibmysql#mysql的include路径
INCLUDEPATH $$quote(C:/Program Files/MySQL/MySQL Server 8.1/include)#mysql的include路径
DEPENDPATH $$quote(C:/Program Files/MySQL/MySQL Server 8.1/include)include(../qsqldriverbase.pri)
2.4 构建并运行该文件
将当前编译器调整为MinGW编译器构建.pro文件后运行出现以下对话框即为编译成功
如果构建过程中出现该错误Cannot read xxx/qtsqldrivers-config.priNo such file or directory可不用管直接运行。
2.5 复制qsqlmysql.dll和qsqlmysqld.dll文件
在QT的同级目录下会出现 plugins 的文件夹里面有刚刚编译好的库文件将其中的qsqlmysql.dll和qsqlmysqld.dll文件复制到MinGW编译器的plugins\sqldrivers目录下。
此时MYSQL驱动即安装成功可以在项目中使用 QSqlDatabase::drivers() 查看。
2.6 参考
安装MySQL驱动详细流程
3 安装MYSQL驱动 – MSVC编译器
3.1 下载MYSQL
3.2 拷贝libmysql.dll和libmysql.lib文件
1打开MySQL的安装目录下的lib文件夹如C:\Program Files\MySQL\MySQL Server 8.1\lib 2将该文件夹下的libmysql.dll和libmysql.lib文件拷贝到Qt的MSVC2017_64编译器的bin文件夹下如F:\QT\5.12.6\msvc2017_64\bin
3.3 编译qsqlmysql.dll文件
1需要利用QT的源码进行编译在QT安装时需要选择 Source 来选择安装源码此时在QT目录下可以找到 Src 文件夹 2进入 Qt安装目录Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql 文件夹打开 mysql.pro 文件进行修改
TARGET qsqlmysqlHEADERS $$PWD/qsql_mysql_p.h
SOURCES $$PWD/qsql_mysql.cpp $$PWD/main.cpp#QMAKE_USE mysqlOTHER_FILES mysql.jsonPLUGIN_CLASS_NAME QMYSQLDriverPlugin#mysql的lib路径
LIBS -L $$quote(C:/Program Files/MySQL/MySQL Server 8.1/lib) -llibmysql#mysql的include路径
INCLUDEPATH $$quote(C:/Program Files/MySQL/MySQL Server 8.1/include)#mysql的include路径
DEPENDPATH $$quote(C:/Program Files/MySQL/MySQL Server 8.1/include)include(../qsqldriverbase.pri)3.4 构建并运行该文件
将当前编译器调整为MSVC2017_64编译器构建.pro文件后运行出现以下对话框即为编译成功
3.5 可能遇到的问题
Cannot read xxx/qtsqldrivers-config.priNo such file or directory
不用管直接运行。
msvc-version.conf loaded but QMAKE_MSC_VER isnt set
在MSVC2017_64编译器的目录F:\QT\5.12.6\msvc2017_64\mkspecs\common下打开msvc-version.conf文件添加 QMAKE_MSC_VER 1900
...
#
# Version-specific changes
#
QMAKE_MSC_VER 1900isEmpty(QMAKE_MSC_VER): error(msvc-version.conf loaded but QMAKE_MSC_VER isnt set)MSVC_VER 8.0
...3.6 复制qsqlmysql.dll、qsqlmysqld.dll文件
在mysql的同级目录下会生成plugins文件里面有刚编译好的qsql文件即F:\QT\5.12.6\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers 目录下的 qsqlmysql.dll和qsqlmysqld.dll文件 复制到MSVC2017_64编译器的plugins\sqldrivers目录下。