Qt实战案例(28)——利用QSQL相关类实现对MySQL数据库的基本操作及相关设置详解
目录一、项目介绍二、项目基本配置2.1 安装MySQL2.2 创建Qt项目2.3 移动libmysql.dll文件三、UI界面设计四、主程序实现4.1 pro文件4.2 main.cpp五、效果演示一、项目介绍利用QSQL相关类实现对MySQL数据库的基本操作详解。二、项目基本配置2.1 安装MySQL下载安装MySQL的详细步骤可以参考:MySQL数据库的安装与卸载保姆级教程如果是已经下载完成,
目录
一、项目介绍
利用QSQL相关类实现对MySQL数据库的基本操作详解。
二、项目基本配置
2.1 安装MySQL
下载安装MySQL的详细步骤可以参考:MySQL数据库的安装与卸载保姆级教程
如果是已经下载完成,则需要启动:
使用管理员权限打开命令提示符,输入:
net start mysql
即可启动MySQL服务。
2.2 创建Qt项目
新建一个Qt案例,项目名称为“SQLTest”,基类选择“QWidget”,取消创建UI界面复选框的选中状态,完成项目创建。
2.3 移动libmysql.dll文件
如果不做任何操作时连接MySQL发现打印错误:
这是因为缺少驱动文件libmysql.dll,该文件位于: MySQL文件夹的lib目录下
我这里位于:E:\mysql-8.0.26-winx64\lib目录下
方法1:
将libmysql.dll复制到Qt文件夹的bin目录下:
我这里是D:\Qt\6.1.0\mingw81_64\bin
方法2:
将libmysql.dll复制到Qt项目的debug或者release下
三、UI界面设计
无UI界面
四、主程序实现
4.1 pro文件
在SQLTest.pro文件中添加如下代码:
QT+=sql
4.2 main.cpp
【注】:在创建MySQL之前首先创建一个student的表:
create database student;
源文件main.cpp中代码如下:
首先需要创建MySQL数据库,然后激活与数据库的物理连接:
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost"); //如果填入localhost,则表示链接本地的数据库
db.setDatabaseName("student"); //要连接的数据库名
db.setUserName("root");
db.setPassword("123456");
db.setPort(3306);
创建数据库表:
if(db.open())
{
QSqlQuery query;
query.exec("DROP TABLE students"); //删除名为students的表
query.exec("CREATE TABLE students("
"id INT NOT NULL AUTO_INCREMENT,"
"name VARCHAR(20) NOT NULL,"
"sroce INT NOT NULL,"
"class VARCHAR(20) NOT NULL,"
"PRIMARY KEY (id) )ENGINE=InnoDB DEFAULT CHARSET=utf8;");
//重新创建一个students表,标题分别为id、name、score、class
query.exec("INSERT INTO students(name,sroce,class) VALUES ('小a', 85, '初2-1班')");
query.exec("INSERT INTO students(name,sroce,class) VALUES ('小b', 15, '初2-2班')");
query.exec("INSERT INTO students(name,sroce,class) VALUES ('小c', 35, '初2-3班')");
}
五、效果演示
完整效果可以利用qDebug()输出显示,或者利用Navicat可视化工具查看。
如果没有看懂的话,完整代码可以参考:https://download.csdn.net/download/didi_ya/77286905
ok,以上便是本文的全部内容了,如果对你有所帮助,记得点个赞哟~
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)