日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt学习笔记-QSqlModel的事物操作

發布時間:2025/3/15 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt学习笔记-QSqlModel的事物操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

程序運行截圖如下:



代碼如下:

connection.h

#ifndef CONNECTION_H #define CONNECTION_H#include <QMessageBox> #include <QSqlDatabase> #include <QSqlQuery>static bool createConnection(){QSqlDatabase db=QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("my.db");if(!db.open()){QMessageBox::critical(NULL,"打開失敗","不能建立連接.");return false;}QSqlQuery query;query.exec("create table student (id int primary key, ""name varchar, course int)");query.exec("insert into student values(1, '球球', 11)");query.exec("insert into student values(2, '腿腿', 11)");query.exec("insert into student values(3, '小美', 12)");query.exec("create table course (id int primary key, ""name varchar, teacher varchar)");query.exec("insert into course values(10, '數學', '王老師')");query.exec("insert into course values(11, '英語', '張老師')");query.exec("insert into course values(12, '計算機', '白老師')");return true; }#endif // CONNECTION_H

mainwindow.h

#ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> class QSqlTableModel;namespace Ui { class MainWindow; }class MainWindow : public QMainWindow {Q_OBJECTpublic:explicit MainWindow(QWidget *parent = 0);~MainWindow();private slots:void on_pushButton_clicked();void on_pushButton_2_clicked();void on_pushButton_3_clicked();void on_pushButton_4_clicked();void on_pushButton_5_clicked();void on_pushButton_6_clicked();void on_pushButton_7_clicked();void on_pushButton_8_clicked();private:Ui::MainWindow *ui;QSqlTableModel *model; };

main.cpp

#include "mainwindow.h" #include <QApplication>#include "connection.h"int main(int argc, char *argv[]) {QApplication a(argc, argv);if(!createConnection())return 1;MainWindow w;w.show();return a.exec(); }


mainwindow.cpp

#include "mainwindow.h" #include "ui_mainwindow.h"#include <QSqlQueryModel> #include <QSqlTableModel> #include <QSqlRelationalTableModel> #include <QTableView> #include <QDebug> #include <QMessageBox> #include <QSqlError>MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui->setupUi(this);model=new QSqlTableModel(this);model->setTable("student");model->select();model->setEditStrategy(QSqlTableModel::OnManualSubmit);ui->tableView->setModel(model); }MainWindow::~MainWindow() {delete ui; }void MainWindow::on_pushButton_clicked() {QString name=ui->lineEdit->text();model->setFilter(QString("name=%1").arg(name));model->select(); }void MainWindow::on_pushButton_2_clicked() {model->setTable("student");model->select(); }void MainWindow::on_pushButton_3_clicked() {model->database().transaction();if(model->submitAll()){if(model->database().commit()){QMessageBox::information(this,"tableModel","數據修改成功!");}}else{model->database().rollback();QMessageBox::warning(this,"tableModel",tr("數據庫錯誤:%1").arg(model->lastError().text()));} }void MainWindow::on_pushButton_4_clicked() {model->revertAll(); }void MainWindow::on_pushButton_5_clicked() {int rowNum=model->rowCount();int id=10;model->insertRow(rowNum);model->setData(model->index(rowNum,0),id);}void MainWindow::on_pushButton_6_clicked() {int curRow=ui->tableView->currentIndex().row();model->removeRow(curRow);int ok=QMessageBox::warning(this,"刪除當前行","你確定要刪除?",QMessageBox::Yes,QMessageBox::No);if(ok==QMessageBox::No)model->revertAll();elsemodel->submitAll(); }void MainWindow::on_pushButton_7_clicked() {model->setSort(0,Qt::AscendingOrder);model->select(); }void MainWindow::on_pushButton_8_clicked() {model->setSort(0,Qt::DescendingOrder);model->select(); }


新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!

總結

以上是生活随笔為你收集整理的Qt学习笔记-QSqlModel的事物操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 看看黄色片 | 久婷婷 | 人人爽人人爽人人片 | 樱空桃在线 | 亚洲精华液一区二区 | 亚洲第一视频在线播放 | 日韩爱爱网站 | 婷婷一区二区三区 | 欧美一级不卡 | 国产视频一区二区三区四区 | 日本视频网 | 亚洲老女人视频 | 懂色av一区二区三区在线播放 | 十八禁一区二区三区 | xxx久久| 91精品国产成人www | 国产美女在线免费观看 | 国产精自产拍久久久久久蜜 | 青青青视频在线 | 久久亚洲精精品中文字幕早川悠里 | 国产黄色电影 | 全程粗话对白视频videos | 天天插天天射 | 国内毛片毛片毛片毛片毛片 | 成人αv| 日韩一级二级视频 | 亚洲免费在线看 | 国产一级片免费播放 | 怡春院欧美| 欧美日韩一区二区三区69堂 | 福利在线国产 | hd丰满圆润的女人hd | 电影《两个尼姑》免费播放 | 国产噜噜噜噜噜久久久久久久久 | 亚洲av片一区二区三区 | 国产成人无码精品久久久性色 | 国产精品99久久久久久动医院 | 日日人人 | 无码精品人妻一区二区三区湄公河 | 一区二区三区精品久久久 | 一区二区三区不卡在线观看 | 日本不卡123 | h片在线免费看 | 日本草逼视频 | 在线黄色免费网站 | 免费69视频 | 日韩中文字幕不卡 | 免费爱爱视频 | 国产视频第二页 | 台湾chinesehdxxxx少妇 | 天天艹日日干 | 伊人网综合视频 | 色播日韩 | 国外av在线 | 欧美做受xxxxxⅹ性视频 | 久久精品成人 | 国产a精品| 嫩草导航 | 青青草原亚洲视频 | 韩国三级一区 | www.色播.com | 亚洲精品国产欧美 | 欧美视频日韩 | 精品国产鲁一鲁一区二区张丽 | 欧美视频一区二区 | 日韩中文字幕亚洲精品欧美 | 日韩精品一区中文字幕 | 天天摸天天操天天射 | 免费看的黄色 | 日韩成人高清 | 亚洲欧美日韩国产综合 | 丝袜五月天 | 久久久欧美精品 | 色蜜桃av | 国产精品高潮呻吟久久av野狼 | 蜜桃又黄又粗又爽av免 | 日精品| 91看片在线观看 | 欧美视频一二三 | 国产精品久久久99 | 人妻熟女aⅴ一区二区三区汇编 | 在线欧美a | 欧美日一区二区 | 成人超碰 | 五月天久久久久久 | 牛牛影视一区二区 | 久久综合五月 | 久久久艹| 国产精品伦理一区二区 | 香蕉视频在线网址 | 中文字幕日韩高清 | 欧美另类极品videosbest最新版本 | 黄色片一级 | www麻豆| 久久老女人 | 日韩中文字幕综合 | 国产一区a | 免费在线看污 | 日本一二三区视频在线 |