windows10下 QT5.10成功连接MySQL5.7

windows10下 QT5.10成功连接MySQL5.7

注意:QT和MySQL的保持位数一样,我这里选择的都是32bit(99%建议要一样)
建议是:先阅读整篇文章特别注意标注的部分再开始安装
爬了两天坑!!!

1.QT安装(MinGW 32bit)

1.1.运行qt的安装程序,
选择安装目录,我选择E:\QT\qt5.10.1
选择需要的组件:
- 基本组件中的mingw
- source
- 其它自己需要的
- tools中的mingw
- tools中的qt creator

1.2.配置qt creator:
在开始菜单中找到qt creator4.5.1,打开,在菜单“工具”-“选项”-“构建和运行”-“编译器”中,可以看到qt creator自己已经找到了的c和c++编译器,是刚刚安装的qt的tools里面的mingw:
在这里插入图片描述
在这里插入图片描述
注意:这里记住安装的路径

2.MySQL安装(5.7.27 32bit)

2.1.官网下载mysql-5.7.27-win32.zip
下载网址为:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20-win32.zip

2.2.解压到文件E:\MySQL 当然也可以时其它盘,并配置环境变量
右击计算机->属性->高级系统设置->环境变量->系统变量path 后添加 E:\MySQL\bin

2.3.在刚刚解压的根目录(即d:\mysql目录下)下,新建一个文本文件my.ini,将如下内容放入my.ini(格式为ANSI文本)文件中:

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#设置3306端口

port = 3306

# 设置mysql的安装目录

basedir="E:\\MySQL"  

# 这里地址记得加引号,不然不能正常启动。

# 设置mysql数据库的数据的存放目录

datadir="E:\\MySQL\\data"

# 允许最大连接数

max_connections=200

# 服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine

4.以管理员身份运行cmd.exe(右击开始菜单->命令提示符) ,进入E:\MySQL\bin 目录下:1.e: 2.cd E:\MySQL\bin

5.初始化数据库 执行命令: mysqld --initialize-insecure ,这个命令设置root用户密码为空

6. 安装服务 执行命令:mysqld -install

7.启动服务 执行命令:net start mysql**

8.运行mysql 执行命令:mysql -uroot -p 进入mysql控制台
提示输入密码时,直接回车。(因为上面初始化时设置了没有密码)

9.修改密码:
update mysql.user set authentication_string=password(‘your password’) where user=‘root’;

3、编译、安装qt的mysql接口库

3.1. 用管理员权限打开qt的命令行(注意必须是开始菜单里qt文件夹下的那个qt的命令行,不能是普通命令行),进入mysql驱动的源码工程目录E:\Qt\Qt5.10.1\5.10.1\Src\qtbase\src\plugins\sqldrivers\mysql
在这里插入图片描述
注意:没有src文件可以百度下载一个

3.2.用文本编辑器打开mysql.pro,修改内容如下:

#QMAKE_USE += mysql 
QMAKE_LFLAGS +=e:/MySQL/lib/libmysql.dll

3.3.修改上一层目录中的qsqldriverbase.pri,修改内容如下:

# For QMAKE_USE in the parent projects.
#include($$shadowed($$PWD)/qtsqldrivers-config.pri)
include($$shadowed($$PWD)/configure.pri)

3.4回到刚刚打开的qt命令行,执行命令:

qmake "INCLUDEPATH+=e:\\MySQL\\include\\" "LIBS+=e:\\MySQL\\lib\\libmysql.lib" -o Makefile mysql.pro

此时可以正常产生Makefile文件,继续执行命令

mingw32-make -r -j

注意:路径一定不能有空格
3.5.最后,把 E:\MySQL\lib目录下的文件 libmysql.dll 和 libmysqld.dll 拷贝到qt creator的配置中编译器所在的目录E:\QT\qt5.10.1\mingw_32\bin; libmysql.lib 和 libmysqld.lib拷贝到E:\QT\qt5.10.1\mingw_32\lib。
**注意:如果怕不成功,也有博主说可以把下面的5个文件都复制到E:\QT\qt5.10.1\mingw_32\bin **在这里插入图片描述
3.6.测试
(1)新建QT文件
在.pro中加入 QT +=sql
(3)代码

#include "widget.h"
#include "ui_widget.h"
#include <QCoreApplication>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QtDebug>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    qDebug() << QSqlDatabase::drivers();

    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setDatabaseName("mysql");
    db.setUserName("root");
    db.setPassword("你的密码");
    bool ok = db.open();

    if (ok)
    {
        qDebug() << "ok";
    }
    else
    {
        qDebug() << "no";
    }

}

Widget::~Widget()
{
    delete ui;
}

(3)结果
在这里插入图片描述
成功连接!
参考文章:http://blog.sina.com.cn/s/blog_7d668e960102x5lu.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
QT6中配置MySQL 5.7需要以下步骤: 1. 首先,确保你已经安装了MySQL 5.7数据库,并且数据库服务器正在运行。 2. 打开QT6,创建一个新的QT项目或者打开一个已有的项目。 3. 在项目文件(.pro)中添加MySQL相关的模块。在.pro文件中添加以下代码: ``` QT += sql ``` 4. 在代码中包含MySQL相关的头文件。在你的代码文件中添加以下代码: ``` #include <QSqlDatabase> #include <QSqlQuery> ``` 5. 在代码中配置数据库连接。在你的代码文件中添加以下代码: ``` QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); // 设置数据库主机名 db.setPort(3306); // 设置数据库端口号 db.setDatabaseName("your_database_name"); // 设置数据库名称 db.setUserName("your_username"); // 设置数据库用户名 db.setPassword("your_password"); // 设置数据库密码 if (db.open()) { // 数据库连接成功 // 进行数据库操作 } else { // 数据库连接失败 // 处理连接失败的逻辑 } ``` 请将上述代码中的"your_database_name"替换为你的数据库名称,"your_username"替换为你的数据库用户名,"your_password"替换为你的数据库密码。 6. 进行数据库操作。在连接成功后,你可以使用QSqlQuery类执行SQL查询和操作数据库。例如: ``` QSqlQuery query; query.exec("SELECT * FROM your_table_name"); // 执行查询语句 while (query.next()) { // 处理查询结果 } ``` 请将上述代码中的"your_table_name"替换为你要查询的表名。 以上是在QT6中配置MySQL 5.7的基本步骤。如果你有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值