被Qt连接数据库折磨了三天之后终于连接成功了,记录一下希望对看到的人有所帮助,下面这篇文章主要给大家介绍了关于QT连接Mysql数据库的详细教程,文中通过图文介绍的非常详细,需要的朋友可以参考下
前言
QT连接Mysql数据库步骤相对比较麻烦,因此写了篇文章将详细过程呈现给大家。
方法一、直接通过MySQL的驱动加载数据库
示例代码:
(1)在.pro文件中添加下列代码:
QT +=sql(2)在mainwindow.h文件中添加下列头文件:
#include<QSqlDatabase>(3)在main.cpp文件中添加下列代码:
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("127.0.0.1"); //连接本地主机
db.setPort(3306);
db.setDatabaseName("数据库名");
db.setUserName("用户名");
db.setPassword("密码");
bool ok = db.open();
if (ok){
QMessageBox::information(this, "infor", "link success");
}
else {
QMessageBox::information(this, "infor", "link failed");
qDebug()<<"error open database because"<<db.lastError().text();
}
运行代码,如果连接Mysql成功则输出下面结果:

如果连接Mysql失败则输出:

如果连接Mysql失败也不用太灰心,方法一在初次连接时很多情况下都会出错。下面我们来看看第二种成功率更高的连接方法。
方法二、通过ODBC连接MySQL数据库
1.下载地址
ODBC下载官网
(1)选择适合自己QT版本的ODBC版本。
具体如何查看自己QT是多少位的,可以通过QT软件上方的菜单栏 帮助->About QT Creator 查看位数

(2)点击DownLoad后会进入下面的界面

点击No thanks,just start my download即可下载,不用点击上面的登录按钮,否则会有繁琐的登录步骤。
(3)下载完ODBC后,双击安装,一直点next即可完成安装。

(4)安装之后在电脑左下角的搜索栏中输入ODBC即可查看安装后的ODBC

(5)点击添加按钮添加用户DSN.

(6)点击MYSQL ODBC 8。0 ANSI Driver。

(7)这里的内容按照下面提示对应填好即可。

(8)完成Mysql的添加后,可以点击Test按钮测试一下能否连接。

2.ODBC连接代码
代码如下:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setHostName("127.0.0.1");
db.setPort(3306);
db.setDatabaseName("刚刚在ODBC中创建的Data source name"); //不是Database,记得别填错
db.setUserName("用户名");
db.setPassword("密码");
bool ok = db.open();
if (ok){
QMessageBox::information(this, "infor", "link success");
}
else {
QMessageBox::information(this, "infor", "link failed");
qDebug()<<"error open database because"<<db.lastError().text();
}恭喜你走到这一步,离成功连接Mysql只差最后一步!运行代码,一般都是可以完成连接的了。
总结
QT连接Mysql数据库的步骤相对繁琐,但是也是一个不错的学习经历。
到此这篇关于QT连接Mysql数据库的文章就介绍到这了,更多相关QT连接Mysql数据库内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:QT连接Mysql数据库的详细教程(亲测成功版)
基础教程推荐
- 如何保障mysql和redis之间的数据一致性 2024-04-25
- mysql时间字段默认设置为当前时间实例代码 2022-08-31
- SQL Server之SELECT INTO 和 INSERT INTO SELECT案例详解 2024-02-13
- mysql服务启动却连接不上的解决方法 2023-12-08
- 详解Redis连接命令使用方法 2024-03-23
- Redis配置项汇总 2024-04-04
- Mysql查看死锁与解除死锁的深入讲解 2024-02-14
- Redis GEORADIUS命令 2024-04-06
- 浅谈数据库优化方案 2024-02-16
- MySQL索引优化之适合构建索引的几种情况详解 2023-12-29
