#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtSql>
#include<QSqlError>
#include <QDebug>
QSqlDatabase db;
//查询数据
QSqlQuery MainWindow::queryDatabase(const QString &query)
{
QSqlQuery sqlQuery;
sqlQuery = QSqlQuery(db);
if (!sqlQuery.exec(query)) {
qDebug() << "查询失败:" << sqlQuery.lastError().text();
}
return sqlQuery;
}
void MainWindow::queryDatabase1(){
QSqlQuery query=this->queryDatabase("select * from user");
/*while (query.next()) {
QString result = query.value(0).toString();
QString result1 = query.value(1).toString();
qDebug() << result<<" "<<result1;
}*/
QSqlQueryModel *model=new QSqlQueryModel(ui->tableView);
model->setQuery(query);//将查询结果绑定到模型上
ui->tableView->setModel(model);
}
//连接数据库
bool MainWindow::connectToDatabase(const QString &host, const QString &dbName, const QString &user, const QString &password)
{
//db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName(host);
db.setDatabaseName(dbName);
db.setUserName(user);
db.setPassword(password);
if (!db.open()) {
qDebug() << "数据库连接失败:" << db.lastError().text();
return false;
} else {
qDebug() << "数据库连接成功!";
return true;
}
}
//点击按钮实现数据库表的数据删除
void MainWindow::onButtonClicked2()
{
QString username = ui->lineEdit_3->text();
QSqlQuery query;
//QString username=ui->lineEdit->text();
//QSqlQuery query;
QString str=QString("delete from user where username='%1'").arg(username);
if (!query.exec(str)) {
qDebug() << "删除失败:" << query.lastError().text();
} else {
qDebug() << "删除成功";
}
}
//点击按钮实现表的数据的显示
void MainWindow::onButtonClicked1()
{
//QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
/*QString host="localhost";
QString dbName="sys";
QString user="root";
QString password="12345";
this->connectToDatabase(host,dbName,user,password);*/
QSqlQuery query=this->queryDatabase("select * from user");
/*while (query.next()) {
QString result = query.value(0).toString();
QString result1 = query.value(1).toString();
qDebug() << result<<" "<<result1;
}*/
QSqlQueryModel *model=new QSqlQueryModel(ui->tableView);
model->setQuery(query);//将查询结果绑定到模型上
ui->tableView->setModel(model);
}
//点击按钮,实现查找某条数据
void MainWindow::onButtonClicked3()
{
/*QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");*/
/*QString host="localhost";
QString dbName="sys";
QString user="root";
QString password="12345";
this->connectToDatabase(host,dbName,user,password);*/
QString username = ui->lineEdit_4->text();
QSqlQuery query=this->queryDatabase(QString("select * from user where username = '%1'").arg(username));
/*while (query.next()) {
QString result = query.value(0).toString();
QString result1 = query.value(1).toString();
qDebug() << result<<" "<<result1;
}*/
QSqlQueryModel *model=new QSqlQueryModel(ui->tableView);
model->setQuery(query);//将查询结果绑定到模型上
ui->tableView->setModel(model);
db.close();
}
//跳转到增加数据框
void MainWindow::onButtonClicked4()
{
Dialog d(this);
//d.setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowCloseButtonHint);
d.exec();
}
//跳转到修改数据框
void MainWindow::onButtonClicked5()
{
Dialog1 d(this);
//d.setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowCloseButtonHint);
d.exec();
}
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
//static QSqlDatabase
db=QSqlDatabase::addDatabase("QMYSQL");
QString host="localhost";
QString dbName="sys";
QString user="root";
QString password="12345";
this->connectToDatabase(host,dbName,user,password);
//this->queryDatabase1(db);
connect(ui->pushButton_3, &QPushButton::clicked, this, &MainWindow::onButtonClicked5);
connect(ui->pushButton_4, &QPushButton::clicked, this, &MainWindow::onButtonClicked3);
connect(ui->pushButton, &QPushButton::clicked, this, &MainWindow::onButtonClicked1);
connect(ui->pushButton_2, &QPushButton::clicked, this, &MainWindow::onButtonClicked2);
connect(ui->pushButton_5, &QPushButton::clicked, this, &MainWindow::onButtonClicked4);
/*QSqlQuery query=this->queryDatabase(db,"select * from user");
/*while (query.next()) {
QString result = query.value(0).toString();
QString result1 = query.value(1).toString();
qDebug() << result<<" "<<result1;
}*/
/*QSqlQueryModel *model=new QSqlQueryModel(ui->tableView);
model->setQuery(query);//将查询结果绑定到模型上
ui->tableView->setModel(model);
ui->
//ui->setupUi(this);*/
}
MainWindow::~MainWindow()
{
delete ui;
}
没有合适的资源?快使用搜索试试~ 我知道了~
Qt连接mysql数据库,全局变量定义db
共33个文件
cpp:7个
o:7个
h:7个
需积分: 0 2 下载量 8 浏览量
2024-04-18
15:18:17
上传
评论
收藏 1.91MB RAR 举报
温馨提示
Qt连接mysql数据库,全局变量定义db
资源推荐
资源详情
资源评论
收起资源包目录
untitled5.rar (33个子文件)
untitled5
untitled5
mainwindow.h 895B
dialog1.cpp 3KB
untitled5_zh_CN.ts 107B
dialog1.h 544B
dialog.ui 2KB
dialog.cpp 1KB
mainwindow.cpp 5KB
untitled5.pro.user 22KB
main.cpp 183B
mainwindow.ui 3KB
untitled5.pro.user.3ccb458 22KB
dialog1.ui 2KB
dialog.h 334B
untitled5.pro 1KB
build-untitled5-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
Makefile 29KB
debug
moc_dialog.cpp 3KB
moc_mainwindow.cpp 3KB
dialog.o 861KB
moc_mainwindow.o 477KB
mainwindow.o 876KB
dialog1.o 885KB
moc_dialog.o 476KB
moc_dialog1.cpp 3KB
moc_dialog1.o 477KB
untitled5.exe 4.02MB
main.o 562KB
moc_predefs.h 14KB
release
ui_dialog.h 3KB
Makefile.Release 103KB
ui_mainwindow.h 5KB
Makefile.Debug 103KB
.qmake.stash 1013B
ui_dialog1.h 3KB
共 33 条
- 1
资源评论
人还是要有梦想的
- 粉丝: 86
- 资源: 42
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功