60黑马QT笔记之SQLite

2023-10-29

60黑马QT笔记之SQLite

1 与MYSQL的区别
1)SQLite是本地数据库,不需要和MYSQL一样需要连接;
2)插入时不支持自动增长,所以主键例如id,在输入时需要自己去控制;
3)使用时需要先提前建好后缀为xxx.db的文本文件。

2 代码逻辑

    //打印Qt支持的数据库驱动
    qDebug() << QSqlDatabase::drivers();


    // 1 添加Sqlite数据库
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    // 2 设置数据库 QSQLITE是本地数据库 不需要连接
    db.setDatabaseName("C:/Users/Administrator/Desktop/MyQtCode/day08/info.db");

    // 3 打开数据库
    if( !db.open() )
    {
        QMessageBox::warning(this, "错误", db.lastError().text());
        return;
    }

    // 4 操作(创表和插入等等)
    // 注意SQLite是不支持自动增长的 所以id需要自己赋值
    QSqlQuery query;
    query.exec("create table student(id int primary key, name varchar(255), age int, score int);");

    // ODBC风格批量插入步骤 1预处理插入占位符 2用可变列表给占位符赋值 3添加绑定  4执行预处理
    // 1 预处理插入占位符
    query.prepare("insert into student(name, age, score) values(?, ?, ?)");

    // 2 用可变列表给占位符赋值
    QVariantList nameList;
    nameList << "xiaoming" << "xiaolong" << "xiaojiang";
    QVariantList ageList;
    ageList << 11 << 22 << 33;      // age为int,不能用双引号"22"
    QVariantList scoreList;
    scoreList << 59 << 69 << 79;

    // 3 添加绑定 按顺序绑定
    query.addBindValue(nameList);
    query.addBindValue(ageList);
    query.addBindValue(scoreList);

    // 4 执行预处理
    query.execBatch();

    // 最后遍历
    query.exec("select * from student");
    while(query.next()) //一行一行遍历
    {
        //取出当前行的内容
        qDebug() << query.value(0).toInt()
                 << query.value(1).toString()
                 << query.value("age").toInt()
                 << query.value("score").toInt();
    }

最后可以知道,这种数据库不大,使用起来也是比较简单,如果只是小项目开发,那么保存数据的时候也是不错的选择。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

60黑马QT笔记之SQLite 的相关文章

  • 【计算机开题报告】基于JAVA的酒店管理系统的设计与实现

    1 毕业设计 论文 综述 随着社会经济和科技的迅速发展 人们对衣食住行的要求也逐渐提高 酒店 宾馆在服务行业中扮演着越来越重要的角色 本课程设计的内容旨在以管理系统的方式给人们出行提供酒店预订服务 从而能够更方便快捷的帮助酒店工作人员办理客
  • MySQL中设置自增主键id从1开始

    可能遇到过这种问题 当你只想新增一条数据时 发现使用Insert语句后 发现id并不是从1开始的 握草 怎么回事 其实很简单 通过执行一下SQL 对应你的表就可以解决 ALTER TABLE user AUTO INCREMENT 1 具体
  • 【计算机开题报告】二手车交易平台

    一 选题依据 简述国内外研究现状 生产需求状况 说明选题目的 意义 列出主要参考文献 选题目的 意义 如今时代网络技术正在快速发展 电子商务技术也以极为强势的姿态闯入人们的视野之中 随着人们生活质量的提升 为了对身边二手物品进行回收利用 二
  • ERROR 5025 (HY000): Insert has filtered data in strict mode, tracking_url=http://IP

    通过http api批量插入数据的时候报Reason null value for not null column column xxx src line 解决方法 检查是否有null值存在 增加数据库字段长度 如下语句更改长度 ALTER
  • 如何在CentOS安装SQL Server数据库并通过内网穿透工具实现公网访问

    文章目录 前言 1 安装sql server 2 局域网测试连接 3 安装cpolar内网穿透 4 将sqlserver映射到公网 5 公网远程连接 6 固定连接公网地址 7 使用固定公网地址连接 前言 简单几步实现在Linux cento
  • 拼多多详情API开启运营比价新纪元

    随着互联网的快速发展 电商行业正在迅速崛起 拼多多作为一家新兴的电商平台 凭借其独特的营销策略和创新的商业模式 成为了电商行业的一匹黑马 在拼多多的成功背后 其详情API接口营销起到了至关重要的作用 本文将详细介绍拼多多详情API接口营销的
  • AntDB内存管理之内存上下文之如何使用内存上下文

    5 如何使用内存上下文 使用内存上下文之前 我们需要先对其进行创建 AntDB启动时已经创建并初始化好了部分内存上下文 例如 TopMemoryContext 这个TopMemoryContext是所有内存上下文的父节点或者祖先节点 一般我
  • 【计算机毕业设计】实验室预约管理

    身处网络时代 随着网络系统体系发展的不断成熟和完善 人们的生活也随之发生了很大的变化 人们在追求较高物质生活的同时 也在想着如何使自身的精神内涵得到提升 而读书就是人们获得精神享受非常重要的途径 为了满足人们随时随地只要有网络就可以看书的要
  • 【计算机毕业设计】出租车管理系统

    现代经济快节奏发展以及不断完善升级的信息化技术 让传统数据信息的管理升级为软件存储 归纳 集中处理数据信息的管理方式 本出租车管理系统就是在这样的大环境下诞生 其可以帮助管理者在短时间内处理完毕庞大的数据信息 使用这种软件工具可以帮助管理人
  • 【计算机毕业设计】航空信息管理系统

    传统信息的管理大部分依赖于管理人员的手工登记与管理 然而 随着近些年信息技术的迅猛发展 让许多比较老套的信息管理模式进行了更新迭代 飞机票信息因为其管理内容繁杂 管理数量繁多导致手工进行处理不能满足广大用户的需求 因此就应运而生出相应的航空
  • 【计算机毕业设计】学生就业管理系统

    如今社会上各行各业 都喜欢用自己行业的专属软件工作 互联网发展到这个时候 人们已经发现离不开了互联网 新技术的产生 往往能解决一些老技术的弊端问题 因为传统学生就业信息管理难度大 容错率低 管理人员处理数据费工费时 所以专门为解决这个难题开
  • 软件测试/测试开发/全日制/测试管理丨Redis内存数据库

    Redis是一种开源 内存中的数据结构存储系统 它提供了高性能 灵活性和丰富的数据结构 以下是Redis内存数据库的基本介绍 键值存储 Redis基于键值对的存储模型 其中每个键都与一个特定的值相关联 这种简单的数据模型使其易于使用和理解
  • 38条Web测试经验分享

    1 页面链接检查 每一个链接是否都有对应的页面 并且页面之间切换正确 可以使用一些工具 如LinkBotPro File AIDCS HTML Link Validater Xenu等工具 LinkBotPro不支持中文 中文字符显示为乱码
  • 基于java的饮食分享平台系统设计与实现

    基于java的饮食分享平台系统设计与实现 I 引言 A 研究背景和动机 近年来 随着人们生活水平的提高和健康意识的增强 饮食健康已经成为越来越多人的关注焦点 因此 一个方便快捷的饮食分享平台就显得尤为重要 基于Java的饮食分享平台系统设计
  • 【计算机毕业设计】电影播放平台

    电影播放平台采用B S架构 数据库是MySQL 网站的搭建与开发采用了先进的java进行编写 使用了springboot框架 该系统从两个对象 由管理员和用户来对系统进行设计构建 主要功能包括 个人信息修改 对用户 电影分类 电影信息等功能
  • 【计算机毕业设计】白优校园社团网站的设计与实现

    近些年 随着中国经济发展 人民的生活质量逐渐提高 对网络的依赖性越来越高 通过网络处理的事务越来越多 随着白优校园社团网站的常态化 如果依然采用传统的管理方式 将会为工作人员带来庞大的工作量 这将是一个巨大考验 需要投入大量人力开展对社团
  • 30天精通Nodejs--第二十天:express-操作mysql

    目录 前言 安装依赖并配置MySQL连接 安装mysql2库 配置连接信息 在Express应用中使用MySQL 结合Express路由实现CRUD操作 整合到主应用 结语 前言 在Node js中使用Expre
  • 温室气体排放更敏感的模型(即更高的平衡气候敏感性(ECS))在数年到数十年时间尺度上也具有更高的温度变化(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Python代码 数据
  • 光波导结构

    摘要 增强现实和混合现实 AR MR 领域的新应用引起了人们对带有光栅区域的光波导系统的越来越多的关注 这些光波导系统用于输入和输出耦合以及扩瞳目的 VirtualLab Fusion为这类系统的仿真和设计提供了几个强大的工具 其中一个是具
  • Python 使用 NoSQL 数据库的优选方案

    NoSQL 数据库因其高性能 可扩展性和灵活性而风靡一时 然而 对于 Python 程序员而言 选择合适的 NoSQL 数据库可能会令人困惑 因为有多种选择可供选择 那么 哪种 NoSQL 数据库最适合 Python 呢 2 解决方案 根据

随机推荐

  • 5G产业链正在蓬勃发展 边缘计算的未来前景如何?

    在5G商用化启动后 相关产业链的价值正在被大多数投资者挖掘 其中 边缘云的潜力尤为引人关注 可以说 目前 边缘云发已构建出独特的商业模式 其上建立的新生态正在被越来越多的企业接受 数科星球 原创 作者丨数数 编辑丨十里香 在过去 5G被认为
  • Spring Boot 学习研究笔记(十一)IDEA SpringBoot 打包jar 两种方式

    IDEA SpringBoot 打包jar 两种方式 一 配置JAR 相关准备工作 1 选中打包的项目 File gt Project Structure 2 选择需要打包的模块 3 配置入口 JAR 依赖库文件 META INF 目录 4
  • ZTree修改最前面的加减号、图标及大小、字体及大小、以及间距

    效果如下 最前面的加减号 图标及大小 字体及大小 以及间距都可以更改 具体如下 1 首先 把Ztree官方给的Demo中的如下红框中的样式文件复制到自己项目的css目录中 其中蓝色部分是我自己添加的自定义图标 2 新建Ztree html如
  • python中在不同文件夹/同一个文件夹两种情况下如何引用另一个.py文件

    原文链接 代码可到原文直接复制 https blog csdn net ispringmw article details 119255858
  • Redis集群数据分片机制说明

    Redis 集群简介 Redis Cluster 是 Redis 的分布式解决方案 在 3 0 版本正式推出 有效地解决了 Redis 分布式方面的需求 Redis Cluster 一般由多个节点组成 节点数量至少为 6 个才能保证组成完整
  • BeyondCompare去掉时间戳的匹配

    BeyondCompare是一个非常好用的对比工具 其中在对比文件的时候 我们可能需要在不进入文件的情况下 一眼就看出两个文件是否一样 在没有去掉时间戳的匹配的情况下 是看不出来的 因为可能文件的内容是一样的 而文件的创建修改时间不一样 这
  • FastSAM 论文解读

    论文名称 Fast Segment Anything 论文地址 http export arxiv org pdf 2306 12156 代码地址 GitHub CASIA IVA Lab FastSAM Fast Segment Anyt
  • 案例 - 图书管理+聊天机器人

    文章目录 图书管理 8 1 渲染UI结构 8 2 案例用到的库和插件 8 3 渲染图书列表 核心代码 8 4 删除图书 核心代码 8 5 添加图书 核心代码 聊天机器人 9 1 演示案例要完成的效果 9 2 梳理案例的代码结构 9 3 将用
  • C# 关于运算符重载--矢量之间的运算

    运算符重载就是指重写 1 1 中的加号 那样我们可以实现1 1 1 类似的 其他运算符重载也是这样的道理 然运算符的重载用来干这些事显得鸡肋了些 更多的是 通过运算符重载去实现一般的加减乘除不能实现的运算 例如 gt 矢量的加减乘除 cla
  • 数据分析及算法总结

    一 K 近邻算 工作原理 简洁的讲 如果一个样本在特定的空间中的K个最邻近的中的大多数属于某个类 则这个样本属于这个类 用途 k近邻的目的是测量不同特征值与数据集之间的距离来进行分类 样本差异性 欧式距离 优缺点 优点 精度高 对异常值不敏
  • Vue-后台返回excel文件流,前端怎么处理

    导出Excel公用方法 export function exportMethod data axios method data method url data url data params data params responseType
  • 总结:多线程集合类java.util.concurrent.*

    目录 一 java util concurrent Java并发工具包 二 阻塞队列BlockingQueue 2 1 BlockingQueue用法 2 2 BlockingQueue的方法 2 3 BlockingQueue的实现 2
  • 利用dlib和opencv建立人脸识别数据集并进行人脸识别

    文章目录 一 dlib和opencv建立 二 人脸图像采集并储存 三 采集并保存特征值建立数据集 四 计算均值 五 总结 六 参考链接 一 dlib和opencv建立 请移步 基于dlib库实现人脸特征值提取 二 人脸图像采集并储存 采集2
  • element-ui实现动态菜单栏 并处理菜单栏折叠文本不隐藏问题

    element ui实现动态菜单栏 并处理菜单栏折叠文本不隐藏问题
  • html毛玻璃效果代码,纯CSS实现底层毛玻璃效果(代码示例)

    本篇文章给大家带来的内容是关于纯CSS实现底层毛玻璃效果 代码示例 有一定的参考价值 有需要的朋友可以参考一下 希望对你有所帮助 毛玻璃背景是一个很常见的网页样式 想要实现 其实并不难 但经过我在网上的搜索发现 大量实现方法都较为不规范 且
  • go版本升级

    Window版本的go升级 首先到Go语言中文网下载windows对应的go版本 此处将go升级到1 18 版本 直接下载安装 安装之前会提示卸载旧版本 确定后直接安装在原来的Go安装目录 直接覆盖 安装成功后 在终端输入go versio
  • oracle优化中的常用语句

    查看session使用数 或者称建立的连接数 select count from v session 1 2 查看oracle锁 SELECT substr v lock sid 1 4 SID substr username 1 12 U
  • 专利与论文-6:《专利权利要求书》的撰写与注意事项

    前言 专利权利要求书 在对于专利而言 怎么说它的重要性都不过分 它直接关系到你的专利的权利在哪里 当发生专利侵权的时候 如何保护自己的利益 如果说 专利权利说明书 是专利的技术性文档 那么 专利权利要求书 就是法律性文档 它定义了 哪些技术
  • prefetch 和 preload 及 webpack 的相关处理

    使用预取和预加载是网站性能和用户体验提升的一个很好的途径 本文介绍了使用 prefetch 和 prefetch 进行预取和预加载的方法 并使用 webpack 进行实现 Link 的链接类型 标签的 rel 属性可以定义链接类型 pref
  • 60黑马QT笔记之SQLite

    60黑马QT笔记之SQLite 1 与MYSQL的区别 1 SQLite是本地数据库 不需要和MYSQL一样需要连接 2 插入时不支持自动增长 所以主键例如id 在输入时需要自己去控制 3 使用时需要先提前建好后缀为xxx db的文本文件