QT连接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失败也不用太灰心,方法一在初次连接时很多情况下都会出错。下面我们来看看第二种成功率更高的连接方法。
(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按钮测试一下能否连接。
代码如下:
- 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数据库的步骤相对繁琐,但是也是一个不错的学习经历。希望可以帮到大家,欢迎大家指导评论。
联系客服