首页 > 数据库 >Qt使用Sqlite数据库-2

Qt使用Sqlite数据库-2

时间:2024-04-10 19:00:51浏览次数:23  
标签:Sqlite Qt 数据库 sqlquery Person Table WHERE sqlStr

       上一篇文章介绍了sqlite数据库在Qt中基本使用方法 (链接:Qt使用Sqlite数据库-1(入门级)-CSDN博客)。今天继续学习数据库常用的语法。

1.删除数据库内容

void deleteData()
{
    QString Sql;
    //拼接sql语句
    Sql="DELETE FROM Person_Table WHERE Name = '张三'";//删除名字为张三的行
    //Sql="DELETE FROM Person_Table";//删除表中所有行,相当于清空表格
    QSqlQuery sqlquery(m_database);
    bool ret=sqlquery.exec(Sql);//执行sql语句
    if(true==ret){
        qDebug()<<"删除成功";
    }
    else if(false==ret){
        qDebug()<<"删除失败";
    }
}

        删除数据的数据库语句格式为:DELETE FROM 表名称 WHERE 列名称 = 值

 

2. 修改数据库内容

bool updateData()
{
    QString sqlStr;
    sqlStr="UPDATE Person_Table SET Age = '30' WHERE Name = '张三'";//将名字为张三的年龄改为30
    QSqlQuery sqlquery(m_database);
    if(sqlquery.exec(sqlStr)){
        return true;
    }
    else{
        return false;
    }
}

         修改数据的数据库语句格式为:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

3.对数据库数据进行排序 

bool sortData()
{
    QString sqlStr;
    sqlStr="SELECT Name FROM Person_Table  ORDER BY Age";//将名字按照年龄排序(升序)
    //sqlStr="SELECT Name FROM Person_Table  ORDER BY Age DESC ";//将名字按照年龄排序(降序,和升序比多了一个DESC 关键字)
    QSqlQuery sqlquery(m_database);
    if(sqlquery.exec(sqlStr)){
        return true;
    }
    else{
        return false;
    }
}

 4.where关键字

        where关键字可以有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

下面的运算符可以在where子句中使用:

操作符描述
=等于
<>不等于
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式

注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。

 

 

标签:Sqlite,Qt,数据库,sqlquery,Person,Table,WHERE,sqlStr
From: https://blog.csdn.net/weixin_52739241/article/details/137606429

相关文章

  • windows 环境下使用脚本备份 oracle 数据库数据
    @echooffecho================================================echoWindows环境下Oracle数据库的自动备份脚本echo1.使用当前日期命名备份文件。echo2.自动删除7天前的备份。echo================================================echo以“YYYYMMDD”格......
  • MQTT协议特点及数据包结构详解(值得珍藏)
    点击下载《MQTT协议特点及数据包结构详解(值得珍藏)》1.前言MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,用极少的代码和有......
  • python收到MQTT消息后再发http请求
    python收MQTT消息和 发http请求的代码在前面的文章都有介绍,这里直接上完整的功能代码mqtt2http.py#python3.6importloggingimportrandomimporttimeimportrequests#frompaho.mqttimportclientasmqtt_clientimportpaho.mqtt.clientasmqttBROKER='......
  • python收到MQTT消息后写入mySQL
    python收MQTT消息和写mySQL的代码在前面的文章都有介绍,这里直接上完整的功能代码mqtt2mysql.py#python3.6importloggingimportrandomimporttimeimportmysql.connector#frompaho.mqttimportclientasmqtt_clientimportpaho.mqtt.clientasmqttBROKER......
  • OpenGauss数据库之Python驱动快速入门
    OpenGauss数据库之Python驱动openGauss是一款开源关系型数据库管理系统,采用木兰宽松许可证v2发行。openGauss内核源自PostgreSQL,深度融合华为在数据库领域多年的经验,结合企业级场景需求,持续构建竞争力特性。可是目前针对于OpenGauss数据库的Python应用程序的开发少......
  • ABP-VNext 用户权限管理系统实战04---多数据库支持、批量插入
    系统用的.net core,数据库映射工具为efcore,可以支持多数据库。一、支持多数据库1、扩展AbpDbContextOptions类 需要引入的类 2、服务中注入 二、批量插入实现EFCORE批量插入接口IEfCoreBulkOperationProvider,使用杨中科的包:https://github.com/yangzhongke/Zack.EF......
  • Qt QCharts绘制柱状图,柱高和y轴数据刻度不匹配
    QCharts绘制柱状图,柱高和y轴数据刻度不匹配1//在项目pro文件中添加以下内容2QT+=charts34//在.h文件中添加以下内容,注意:需要将头文件及命名空间添加到ui命名空间之前,否则将提示错误5#include<QtCharts/QChartView>6#include<QtCharts/QBarSerie......
  • spring的事务是什么?与数据库的事务是否一样
    spring的事务是什么?与数据库的事务是否一样先说一下什么是事务,事务:是对数据库的一些列操作。之前一直觉得事务只针对于数据库当中,5种隔离级别,7种传播行为,后来才发现这是针对Spring的,对数据库来说隔离级别只有4种,Spring多了一个DEFAULT这是一个PlatfromTransactionManager默认的......
  • Qt - Qt Creator下载与安装
    一、QtCreator简介Qt是一个跨平台应用开发框架。QtCreator是一个跨平台的集成开发环境(IDE),集成了Qt所提供的功能,可以单独下载使用,也可以结合Qt组合使用。二、QtCreator下载下载地址:https://download.qt.io/archive/(1)进入下载界面后,选择下qt文件夹,或者qtcreator文件夹。(2......
  • SQLSERVER 2019数据库(可疑) 数据修复案例
    2019数据库,在正常使用过程中,服务器突然断电,重新启动服务器后,数据库变为(可疑)。【数据恢复故障分析】由于数据库在正常读写操作过,服务器突然断电,导致数据库无法把所有缓冲中的数据写入到数据库文件中,所以会使数据内部索引及数据区损坏。【数据恢复过......