QT连接Mysql数据库的实现步骤
目录
- 前言
- 方法一、直接通过MySQL的驱动加载数据库
- 方法二、通过ODBC连接MySQL数据库
- ODBC连接代码
- 总结
前言 QT连接Mysql数据库步骤相对比较麻烦,因此写了篇文章将详细过程呈现给大家,欢迎大家来评论区指导提问。
方法一、直接通过MySQL的驱动加载数据库 示例代码:
(1)在.pro文件中添加下列代码:
QT +=sql
(2)在mainwindow.h文件中添加下列头文件:
#include
(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"<
运行代码,如果连接Mysql成功则输出下面结果:
文章图片
如果连接Mysql失败则输出:
文章图片
如果连接Mysql失败也不用太灰心,方法一在初次连接时很多情况下都会出错。下面我们来看看第二种成功率更高的连接方法。
方法二、通过ODBC连接MySQL数据库 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按钮测试一下能否连接。
文章图片
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"<
恭喜你走到这一步,离成功连接Mysql只差最后一步!运行代码,一般都是可以完成连接的了。
总结 【QT连接Mysql数据库的实现步骤】QT连接Mysql数据库的步骤相对繁琐,但是也是一个不错的学习经历。到此这篇关于QT连接Mysql数据库的实现步骤的文章就介绍到这了,更多相关QT连接Mysql数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- django|Django框架+MySQL数据库联合使用(在django中配置mysql数据库,并实现页面数据的增删改查操作)
- mysql 内网环境 连接慢排坑
- 牛客刷题-数据库
- 数据库|牛客网SQL进阶挑战(一)
- 腾讯|腾讯瞄准能源数字化,“连接器”能撬动多大市场?|双碳观察
- 数据库数据恢复ASM磁盘组掉线,ASM实例不能mount的Oracle数据库数据恢复案例
- 数据库|ES6的Promise链式异步编程方法
- MySQL数据库(数据表操作)
- linux之软连接和硬连接的区别
- 几种常见的技术组件介绍——统一认证/单点登录/全局序列号/连接池/数据传输