当前位置: 首页 > news >正文

9.4 数据库 TCP

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//判断数据库对象是否包含了自己使用的数据库if(!db.contains("Stu.db")){//不存在数据库,添加一个数据库//static QSqlDatabase addDatabase(const QString& type);//参数:数据库的版本//返回值:添加的数据库db = QSqlDatabase::addDatabase("QSQLITE");  //表明使用的是sqlite3版本的数据库//给数据库命名db.setDatabaseName("Stu.db");}//打开数据库if(!db.open()){  //如果没有设置QMessageBox::information(this, "信息", "数据库打开失败");return ;}//此时说明数据库已经创建出来,并打开了,就可以创建数据表了//创建数据表需要sql语句,需要使用QSQLQuerry类对象完成//准备sql语句QString sql = "create table if not exists mytable(""id integer primary key autoincrement,"     //id主键,允许自增"numb integer,"                             //学号,整形"name varchar(10),"                         //姓名,字符串"sex varchar(4),"                          //性别,字符串"score integer)";                           //分数//定义语句执行者QSqlQuery querry;//使用querry执行sql语句if(!querry.exec(sql)){QMessageBox::information(this, "信息", "创建表格失败");}else{QMessageBox::information(this, "信息", "创建表格成功");}
}Widget::~Widget()
{delete ui;
}//录入按钮对应的槽函数
void Widget::on_inputbtn_clicked()
{//获取ui界面要存入数据库的数据int numb_ui = ui->numbedit->text().toInt();QString name_ui = ui->nameedit->text();int score_ui = ui->scoreedit->text().toInt();QString sex_ui = ui->sexedit->text();if(numb_ui==0 || name_ui.isNull() || score_ui==0 || sex_ui.isNull()){QMessageBox::information(this, "信息", "请将信息填写完整");return ;}//准备sql语句QString sql = QString("insert into mytable(numb, name, sex, score)""values(%1, '%2', '%3', %4)").arg(numb_ui).arg(name_ui).arg(sex_ui).arg(score_ui);//定义语句执行官qDebug() << sql;QSqlQuery querry;if(!querry.exec(sql)){QMessageBox::information(this, "信息", "插入数据失败");return ;}QMessageBox::information(this, "信息", "数据录入成功");
}//展示按钮对应的槽函数
void Widget::on_showbtn_clicked()
{ui->tableWidget->clear();//准备sql语句QString sql = "select * from mytable";//准备语句执行者QSqlQuery querry;if(!querry.exec(sql)){QMessageBox::information(this, "信息", "查询失败");return ;}//此时,将查询到的结果,全部放到querry对象中//可以通过next函数不断遍历查询结果int i = 0;while(querry.next()){//遍历的就是任意一组记录:querry.record//querry.record().value(1);//将数据库中的表格展示到ui界面//当前记录对应数据项的个数for(int j=0;j<querry.record().count()-1;j++){ui->tableWidget->setItem(i,j,new QTableWidgetItem(querry.record().value(j+1).toString()));}i++;//进入下一行}
}//查找
void Widget::on_searchbtn_clicked()
{ui->tableWidget->clear();//获取ui界面要存入数据库的数据int numb_ui = ui->numbedit->text().toInt();QString name_ui = ui->nameedit->text();int score_ui = ui->scoreedit->text().toInt();QString sex_ui = ui->sexedit->text();//准备sql语句QString sql = QString("select * from mytable where ""numb=%1 and name='%2' and score=%3 and sex='%4'").arg(numb_ui).arg(name_ui).arg(score_ui).arg(sex_ui);qDebug() << sql;QSqlQuery querry;if(!querry.exec(sql)){QMessageBox::information(this, "信息", "条件查询失败");return ;}int i=0;while(querry.next()){for(int j=0;j<querry.record().count()-1;j++){ui->tableWidget->setItem(i,j,new QTableWidgetItem(querry.record().value(j+1).toString()));}i++;}
}//删除
void Widget::on_deletebtn_clicked()
{//获取ui界面要存入数据库的数据int numb_ui = ui->numbedit->text().toInt();QString name_ui = ui->nameedit->text();int score_ui = ui->scoreedit->text().toInt();QString sex_ui = ui->sexedit->text();//准备sql语句QString sql = QString("delete from mytable where ""numb=%1 and name='%2' and score=%3 and sex='%4'").arg(numb_ui).arg(name_ui).arg(score_ui).arg(sex_ui);QSqlQuery querry;if(!querry.exec(sql)){QMessageBox::information(this, "信息", "删除失败");return ;}QMessageBox::information(this, "信息", "删除成功");
}

展示 

查找 

 

删除 

相关文章:

9.4 数据库 TCP

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//判断数据库对象是否包含了自己使用的数据库if(!db.contains("Stu.db")){//不存在数据库&#xff0…...

普通用户使用spark的client无法更新Ranger策略

普通用户使用spark的client无法更新Ranger策略 报错图片&#xff1a; WARN org.apache.ranger.admin.client.RangerAdminRESTClient: Error getting Roles. secureModetrue, usercaojianxiangUCDIPA.VIATRIS.CC (auth:KERBEROS)&#xff0c;responsef"httpStatusCode&quo…...

Git超详细教程

文章目录 一、安装并配置Git二、Git的基本操作三、Github/GitLab/Gitee四、分支 一、安装并配置Git 查看所有的全局配置项 git config --list --global查看指定的全局配置项 git config user.name git config user.email配置用户信息 git config --global user.name "…...

C++ 回调函数

一、使用方法 1.定义一个函数指针 typedef int (*pCallback)(int a, int b);2.定义一个带参的回调函数&#xff08;注释部分是普通回调函数&#xff0c;不用定义第一步里的函数指针&#xff09; //带参 int oneCallback(int a, int b, pCallback p) //int oneCallback(int a, i…...

xilinx FPGA IOB约束使用以及注意事项

文章目录 一、什么是IOB约束二、为什么要使用IOB约束1、在约束文件中加入下面约束&#xff1a;2、直接在代码中加约束&#xff0c; 三、IOB约束使用注意事项 一、什么是IOB约束 在xilinx FPGA中&#xff0c;IOB是位于IO附近的寄存器&#xff0c;是FPGA上距离IO最近的寄存器&am…...

如何统计iOS产品不同渠道的下载量?

一、前言 在开发过程中&#xff0c;Android可能会打出来很多的包&#xff0c;用于标识不同的商店下载量。原来觉得苹果只有一个商店&#xff1a;AppStore&#xff0c;如何做出不同来源的统计呢&#xff1f;本篇文章就是告诉大家如何做不同渠道来源统计。 二、正文 先看一下苹…...

大模型学习

大模型 大规模语言模型&#xff08;Large Language Model&#xff09;简称&#xff0c;具有庞大的参数规模和复杂程度的机器学习模型。在深度学习领域&#xff0c;指具有数百万到数十亿参数的神经网络模型。 优点&#xff1a; 更强大、更准确的模型性能&#xff0c;可面对复杂…...

Redis原理:IntSet

&#xff08;笔记总结自b站黑马程序员课程&#xff09; 一、结构 IntSet是Redis中set集合的一种实现方式&#xff0c;基于整数数组来实现&#xff0c;并且具备长度可变、有序等特征。 结构如下&#xff1a; typedef struct intset {uint32_t encoding; //编码方式uint32_t l…...

【已解决】Splunk 8.2.X 升级ES 后红色报警

1: 背景: 由于splunk ES 占有很大的computing resource, 所以,Splunk ES 升级到7.1.1 后,有红色的alert. 2: 解决方法: 降低iowait 的 threshold: Investigation The default threshold setting for IOWait is pre-set to a low value and may not be relevant to the …...

香橙派使用外设驱动库wiringOP 配合定时器来驱动舵机

舵机认识和硬件接线 关于舵机也是使用过很多次了&#xff0c;详见&#xff1a; 使用PWM波控制开发SG90-CSDN博客 同时再次回顾香橙派的物理引脚对应&#xff1a; 所以舵机的VCC接 2&#xff0c;GND接 6&#xff0c;PWM接 7&#xff08;此处写的是物理引脚编号&#xff09; Li…...

C++学习笔记--函数重载(2)

文章目录 1.3、Function Templates Handling1.3.1、Template Argument Deduction1.3.2、Template Argument Substitution 1.4、Overload Resolution1.4.1、Candidate functions1.4.2、Viable functions1.4.3、Tiebreakers 1.5、走一遍完整的流程1.6、Name Mangling1.7、总结 1.…...

代码随想录算法训练营Day56 || ● 583. 两个字符串的删除操作 ● 72. 编辑距离

今天接触到了真正的距离&#xff0c;但可以通过增删改操作来逼近。 问题1&#xff1a;583. 两个字符串的删除操作 - 力扣&#xff08;LeetCode&#xff09; 给定两个单词 word1 和 word2 &#xff0c;返回使得 word1 和 word2 相同所需的最小步数。 每步 可以删除任意一个字…...

chrome_elf.dll丢失怎么办?修复chrome_elf.dll文件的方法

Chrome是目前最受欢迎的网络浏览器之一&#xff0c;然而有时用户可能会遇到Chrome_elf.dll丢失的问题。该DLL文件是Chrome浏览器的一个重要组成部分&#xff0c;负责启动和管理程序的各种功能。当Chrome_elf.dll丢失时&#xff0c;用户可能无法正常启动Chrome或执行某些功能。本…...

代码随想录32|738.单调递增的数字,968.监控二叉树,56. 合并区间

738.单调递增的数字 链接地址 class Solution { public:int monotoneIncreasingDigits(int n) {string str to_string(n);int flag str.size();for (int i str.size() - 1; i > 0; i--) {if (str[i] < str[i - 1]) {str[i - 1] - 1;flag i;}}for (int j flag; j <…...

BIO NIO AIO演变

Netty是一个提供异步事件驱动的网络应用框架&#xff0c;用以快速开发高性能、高可靠的网络服务器和客户端程序。Netty简化了网络程序的开发&#xff0c;是很多框架和公司都在使用的技术。 Netty并非横空出世&#xff0c;它是在BIO&#xff0c;NIO&#xff0c;AIO演变中的产物…...

JVM GC垃圾回收

一、GC垃圾回收算法 标记-清除算法 算法分为“标记”和“清除”阶段&#xff1a;标记存活的对象&#xff0c; 统一回收所有未被标记的对象(一般选择这种)&#xff1b;也可以反过来&#xff0c;标记出所有需要回收的对象&#xff0c;在标记完成后统一回收所有被标记的对象 。它…...

【数据结构】队列知识点总结--定义;基本操作;队列的顺序实现;链式存储;双端队列;循环队列

欢迎各位看官^_^ 目录 1.队列的定义 2.队列的基本操作 2.1初始化队列 2.2判断队列是否为空 2.3判断队列是否已满 2.4入队 2.5出队 2.6完整代码 3.队列的顺序实现 4.队列的链式存储 5.双端队列 6.循环队列 1.队列的定义 队列&#xff08;Queue&#xff09;是一种先…...

嵌入式学习之链表

对于链表&#xff0c;要重点掌握链表和数组区别和实现&#xff0c;链表静态添加和动态遍历&#xff0c;链表中pointpoint-next,链表节点个数的查找&#xff0c;以及链表从指定节点后方插入新节点的知识。...

静态代理和动态代理笔记

总体分为: 1.静态代理: 代理类和被代理类需要实现同一个接口.在代理类中初始化被代理类对象.在代理类的方法中调 用被代理类的方法.可以选择性的在该方法执行前后增加功能或者控制访问 2.动态代理: 在程序执行过程中,实用JDK的反射机制,创建代理对象,并动态的指定要…...

[SM6225][Android13]user版本默认允许root和remount

开发平台基本信息 芯片: 高通SM6225版本: Android 13kernel: msm-5.15 问题描述 刚刚从Framework踏入性能的小殿堂&#xff0c;User版本默认是不会开启root权限的&#xff0c;而且一般调试需要设置一下CPU GPU DDR performance模式或者修改一些schedule util等调核调频节点去…...

pyinstaller打包exe,使用wexpect的问题

参考github首先打包wexpect 1.进入wexpect目录执行 pyinstaller __main__.py -n wexpect 会生成dist文件夹 2.python代码A.py中使用wexpect&#xff0c;注意wexpect.spawn前后必须按照下面添加代码 import sys,os,wexpect #spawn前 real_executable sys.executable try:if sy…...

OpenCV(三十三):计算轮廓面积与轮廓长度

1.介绍轮廓面积与轮廓长度 轮廓面积&#xff08;Contour Area&#xff09;是指轮廓所包围的区域的总面积。通常情况下&#xff0c;轮廓面积的单位是像素的平方。 轮廓长度&#xff08;Contour Length&#xff09;又称周长&#xff08;Perimeter&#xff09;&#xff0c;表示轮廓…...

9.11作业

实现一个对数组求和的函数&#xff0c;数组通过实参传递给函数 sum0 arr(11 22 33 44 55) Sum() {for i in ${arr[*]}do$((sumi))donereturn $sum } Sum ${arr[*]} var$? echo $var写一个函数&#xff0c;输出当前用户的uid和gid&#xff0c;并使用变量接收结果 Sum() {aid -…...

AI伦理与未来社会:探讨人工智能的道德挑战与机会

引言 引出AI伦理和社会影响的主题&#xff0c;强调AI的快速发展和广泛应用。 概述博客的主要内容&#xff1a;探讨AI的伦理挑战以及它对社会的影响。 第一部分&#xff1a;AI的伦理挑战 算法偏见&#xff1a; 解释什么是算法偏见&#xff0c;以及它为何在AI中成为一个重要问题。…...

Android窗口层级(Window Type)分析

前言 Android的窗口Window分为三种类型&#xff1a; 应用Window&#xff0c;比如Activity、Dialog&#xff1b;子Window&#xff0c;比如PopupWindow&#xff1b;系统Window&#xff0c;比如Toast、系统状态栏、导航栏等等。 应用Window的Z-Ordered最低&#xff0c;就是在系…...

微信小程序基础加强总结

本篇文章给大家带来了关于微信小程序的相关问题&#xff0c;其中主要介绍了一些基础内容&#xff0c;包括了自定义组件、样式隔离、数据、方法和属性等等内容&#xff0c;下面一起来看一下&#xff0c;希望对大家有帮助。 1、自定义组件 1.1、创建组件 在项目的根目录中&…...

【JAVA - List】差集removeAll() 四种方法实现与优化

一、场景&#xff1a; 二、结论&#xff1a; 1. 四种方法耗时 三、代码&#xff1a; 一、场景&#xff1a; 求差集 List1 - Lsit2 二、结论&#xff1a; 1. 四种方法耗时 初始条件方法名方法思路耗时 List1.size319418 List2.size284900 List..removeAll(Lsit2)1036987ms…...

sql注入基本概念

死在山野的风里&#xff0c;活在自由的梦里 sql注入基本概念 MYSQL基本语法union合并查询2个特性&#xff1a;order by 排序三个重要的信息 Sql Server MYSQL 基本语法 登录 mysql -h ip -u user -p pass基本操作 show databases; 查看数据库crea…...

AIGC系列:1.chatgpt可以用来做哪些事情?

上图的意思&#xff1a;神器轩辕剑 那么&#xff0c;在现在AI盛行的信息时代&#xff0c; 你是否知道如何获得和利用ChatGPT这一把轩辕剑来提升你的攻击力和生存能力呢&#xff1f; 故事 程序员小张&#xff1a; 刚毕业&#xff0c;参加工作1年左右&#xff0c;日常工作是C…...

End-to-End Object Detection with Transformers(论文解析)

End-to-End Object Detection with Transformers 摘要介绍相关工作2.1 集合预测2.2 transformer和并行解码2.3 目标检测 3 DETR模型3.1 目标检测集设置预测损失3.2 DETR架构 摘要 我们提出了一种将目标检测视为直接集合预测问题的新方法。我们的方法简化了检测流程&#xff0c…...

佛山网站搭建费用/点点站长工具

Q&#xff1a;A1 A2 A3 A4 A5五名研究人员有可能报名化学比赛&#xff0c;根据下列条件判断那些人参加了比赛&#xff1a; 1. A1参加时&#xff0c;A2也参加&#xff1b; 2. A2和A3只有一个人参加&#xff1b; 3. A3和A4或者都参加&#xff0c;或者都不参加&#xff1b; 4. A4和…...

苏州工业园区网站/快手推广网站

自定义Mvc框架结构及其使用方法 一&#xff0c;什么是MVC框架 MVC框架全名是model&#xff08;模型&#xff09;controller&#xff08;控制器&#xff09;view&#xff08;视图文件&#xff09;所构成的一种开发框架&#xff0c;是一种典型的软件设计典范&#xff0c;用一种…...

edu网站开发/扬州seo优化

Golang是谷歌开发的一款开源性语言&#xff0c;暂时比较方便的IDE有Inteillj Idea、LiteIDE、Eclipse(Golipse)等&#xff0c;使用起来比较方便的IDE&#xff1a;LiteIDE和Inteillj IDEA,但是Inteillj IDEA插件更新太慢&#xff0c;以及存在一些问题&#xff08;go sdk版本支持…...

宜城营销型网站套餐/seo优化行业

现在大部分人家里都会养些宠物&#xff0c;比如猫猫狗狗的&#xff0c;狗子很可爱&#xff0c;拆家很上头&#xff0c; 养狗有三怕&#xff1a;拆家、乱拉屎、整夜叫。虽然狗狗的一些行为习惯跟与遗传有关&#xff0c; 但是主人后天的影响也会给狗狗带来改变&#xff0c;因此…...

网站策划与运营课程认知/合肥网站建设优化

2019独角兽企业重金招聘Python工程师标准>>> 实现时钟效果。有秒针、分针和时针。 Code4App编译测试&#xff0c;测试环境&#xff1a;Xcode 4.3, iOS 5.0。 转载:http://www.adobex.com/ios/source/details/00000598.htm 转载于:https://my.oschina.net/u/868244/b…...

asp.net做的网站模板/排名优化关键词

异常&#xff1a; 标题: 连接到服务器 ------------------------------ 无法连接到 .。 ------------------------------ 其他信息: “System.Data.SqlClient.SqlConnection”的类型初始值设定项引发异常。 (System.Data) ------------------------------ “System.…...