如何做国外网站推广,wordpress增加底部导航,网络传播营销策划方案,网站转化率排名作者#xff1a;billy 版权声明#xff1a;著作权归作者所有#xff0c;商业转载请联系作者获得授权#xff0c;非商业转载请注明出处
前言
上篇中我们安装好了 MySQL 数据库和 Navicat 软件#xff0c;下面在 Qt 中尝试使用数据库
1. 在 Qt 中连接 MySQL 数据库#…作者billy 版权声明著作权归作者所有商业转载请联系作者获得授权非商业转载请注明出处
前言
上篇中我们安装好了 MySQL 数据库和 Navicat 软件下面在 Qt 中尝试使用数据库
1. 在 Qt 中连接 MySQL 数据库尝试一下是否可行 在 pro 中添加数据库模块 QT sql 测试代码如下
#include QSqlDatabase
#include QSqlError
#include QDebugint main()
{QSqlDatabase database QSqlDatabase::addDatabase(QMYSQL);database.setHostName(127.0.0.1);database.setPort(3306);database.setUserName(root);database.setPassword(12345678);database.setDatabaseName(swyl);if ( database.open() ) {qDebug() ok;} else {qDebug() ng;qDebug() database.lastError().text();}return 0;
} 此时运行代码会报错提示你 没有加载 QMYSQL 数据库的驱动 上面提示了目前可用的数据库驱动没有 MySQL 的那就需要我们编译驱动并拷贝到 Qt 中
2. 编译 MySQL 代码并拷贝驱动 把下载的 源代码 mysql-8.0.34-winx64.rar 这个压缩包复制到 MYSQL 安装目录下并解压 打开 Qt 自带的 mysql 工程 路径D:\Qt\Qt_5.15.2\5.15.2\Src\qtbase\src\plugins\sqldrivers\mysql 修改 pro 文件 修改 pri 文件 用 mingw 编译器编译 得到下图中3个文件把 qsqlmysql.dll 拷贝到 D:\Qt\Qt_5.15.2\5.15.2\mingw81_64\plugins\sqldrivers 用 msvc 编译器编译 得到 debug 和 release 版本的 lib 和 dll 把编译生成的 qsqlmysql.dll 和 qsqlmysqld.dll 拷贝到 D:\Qt\Qt_5.15.2\5.15.2\msvc2019_64\plugins\sqldrivers 再把 qsqlmysql.lib 和 qsqlmysqld.lib 拷贝到 D:\Qt\Qt_5.15.2\5.15.2\msvc2019_64\lib 最后把 qsqlmysql.dll 和 qsqlmysqld.dll 拷贝到 D:\Qt\Qt_5.15.2\5.15.2\msvc2019_64\bin 现在 Qt 中已经有 MySQL 的驱动了再运行测试程序就可以成功了
3. 程序打包发布后无法连接 MySQL 数据库
使用 windeployqt 打包发布程序时不会把 MySQL 的依赖库带上需要我们手动去拷贝否则在另一台电脑上就会出现无法连接 MySQL 数据库的情况
需要的依赖库还挺多网上说的只拷贝 plugins 下的亲测是不行的博主整理了一下需要这些 1首先 qsqlmysql.dll 和 qsqlmysqld.dll 是刚才我们编译得到的发布 release 版本时 qsqlmysqld.dll 可以不用带着 2libmysql.dll 在 MySQL 源代码路径中 D:\MySQL\mysql-8.0.34-winx64\lib 3libssl-3-x64.dll 和 libcrypto-3-x64.dll 是 libmysql.dll 的依赖项也在 MySQL 源代码路径中
4本以为拷贝了上述几个依赖库就足够了结果测试还是不行还需要最后两个在 Qt 的安装路径下
更多请参考
Qt 中使用 MySQL 数据库保姆级教程上