Linux-轻量级数据库sqlite-015

1【sqlite】安装

1.让虚拟机能够上网
2.【apt-get】工具集配置好
3.【sudo apt-get install sqlite3】 
4.启动【sqlite3】 【sqlite3】 
5.输入【.quit】退出

2数据库简介

2.1常见的几种数据结构及数据库

1.数组、链表、文件、数据库(1)存储位置及存储器:数组、链表:内存存放数据的方式(代码运行结束、关机数据丢失)文件、数据库:外存存放数据的方式(代码运行结束、关机数据不会丢失)(2)数据量及数据处理效率:文件:数据量很小,处理效率很低数据库:数据量很大,处理数据(增删改查)效率高

3【SQL】命令

1.打开/关闭数据库中列名称:【.headers on/off】
2. 设置输出模式:【.mode csv/column/html/insert/line/list/tabs/tcl】 
3. 查看表名称对应的表的格式:【.schema+表名称】 详解:有哪几列?每一列类型?
4.设置显示时的数据宽度 :【.width 宽度】
5.查看数据库文件中的所有表:【.tables】          

4【SQL】语言

实现数据的:增、删、改、查

4.1使用【sqlite3】打开数据库文件

【sqlite3 数据库文件名】
示例:【sqlite3 ./student.db】 

4.2创建表

【create table】
示例:【sqlite> create table student (id integer primary key asc, name varchar(255), sex varchar(32), age integer, score integer);】

4.3插入数据

【insert into】
示例:
【sqlite> insert into student values (1001, "张三", "男", 19, 80);】
【sqlite> insert into student (id, name, score) values (1002, "李四", 100);】
【sqlite> insert into student values (1002, "王二", "女", 18, NULL);】

4.4查找数据

【select】
示例:
【sqlite> select * from student;】
【sqlite> select name, score from student;】

4.5内容匹配

【where】
示例:
【sqlite> select * from student where name like "%张%";】

4.6主键

key:键值
内键:在表中唯一标识一条数据称为内键
外键:与外部表进行标识的数据称为外键 

4.7删除

【delete from】
示例:
【delete from student where name="李四";】

4.8修改

【update】
示例:
【update student set sex="男",age=19 where name="王二";】

4.9排序

【order by】
示例:
【select * from order_manager order by ordertime desc;】

4.10多表联合查询

4.10.1交叉链接

【cross join】
示例:
【sqlite> select student.name as 学生姓名, lesson.name as 课程名
...> from student cross join lesson;】

4.10.2内链接

【inner join】
示例:
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from score inner join student on score.stuid=student.id;】

4.10.3外链接

【outer join】
示例(1):
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from student left outer join score on score.stuid=student.id;】示例(2):
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from student left outer join score on score.stuid=student.id
...> where name="张三"
...> order by 成绩 desc;】

源码示例(1):

/*练习:数据库完成对订单的管理
1.创建一张订单表,由 ID, 订单号, 货物信息, 生产厂商, 联系人, 联系电话, 订单时间:1    D202403120001
2.在表中插入随机给定的10条数据
3.查找订单信息
(1)查找 联系人为 "张三" 的所有订单号
【select ordername from order_manager where contactperson="张三";】
(2)查找订单号为 "D202403120001" 的所有订单信息
【select * from order_manager where ordername="D202403120001";】
(3)查找 订单时间截止到当天的所有订单号及联系人、联系电话
【select ordername,contactperson,contactphone from order_manager where ordertime < "20240310 24:00:00";】
(4)查找 货物信息包含 "手机" 内容的所有订单信息及货物信息
【select ordername,orderinfo from order_manager where orderinfo like "%手机%";】
(5)查找 生产厂商是"华为" 的所有货物信息包含 "平板" 的订单信息  
【select * from order_manager where factoryname="华为" and orderinfo like "%平板%";】
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/743133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

volatile关键字用处和场景?

什么是volatile关键字 在C语言和Java中&#xff0c;它是一种特殊的类型修饰符&#xff0c;用来告诉编译器该变量可能会被意外地改变。这样&#xff0c;每次存取该变量时&#xff0c;编译器都不会对其进行缓存优化&#xff0c;而是直接从内存中读取或写入&#xff0c;提供了对特…

面试题 --- jdbc执行流程、MyBatis执行流程、MyBatis拦截器配置流程

jdbc执行流程 1. 注册驱动 2. 创建数据库操作对象 3. 执行sql语句 4 .处理操作结果 5 .关闭连接释放资源 MyBatis 执行流程 Executor执行器、MappedStatement 对象、 StatementHandler 语句处理器 关系可以用以下步骤概括 用户通过 SqlSession 调用一个方法&#xff0c;Sq…

GC-垃圾回收

一、what&#xff08;概念&#xff09; garbage collection 二、where&#xff08;作用的区域&#xff09; 堆和方法区 &#xff08;栈和PC随着线程的创建而产生&#xff0c;销毁而消失&#xff09; 三、when&#xff08;什么时候进行垃圾回收&#xff09; 1、引用计数法&#…

双链表(上)

1.结构 1.带头双向循环链表 注意&#xff1a;这里的“带头”跟前面我们说的“头节点”是两个概念&#xff0c;实际前面的在单链表阶段称呼不严 谨&#xff0c;但是为了同学们更好的理解就直接称为单链表的头节点。 带头链表里的头节点&#xff0c;实际为“哨兵位”&#xff0c…

大模型在语音识别领域的最新进展与挑战

摘要&#xff1a; 本文概述了大模型在语音识别领域的最新进展与挑战&#xff0c;包括基础知识、核心组件、实现步骤、代码示例、技巧与实践、性能优化与测试、常见问题与解答、结论与展望等内容。 引言 语音识别技术的发展历程中&#xff0c;大模型的应用和重要性日益凸显。…

OMP实现MATLAB压缩感知实例

OMP(Orthogonal Matching Pursuit,正交匹配追踪)算法是一种用于稀疏信号重构的迭代算法。它的基本思想是在每一步选择与当前残差最相关的原子(或基),并使用它来更新估计值,直到满足停止准则为止。 基本流程 下面是OMP算法的基本流程: 初始化: 将残差初始化为原始信号…

【ARM】MDK在programming algorithm界面添加FLM

【更多软件使用问题请点击亿道电子官方网站查询】 1、 文档目标 解决在programming algorithm界面中无法添加想要的Flash编程算法的问题 2、 问题场景 在对于Debug进行Flash Download进行配置的时候&#xff0c;在programming algorithm界面中有对应的Flash编程算法。可以通过…

数据结构 之 树

目录 1. 定义&#xff1a; 2. 概念&#xff08;重要&#xff09;&#xff1a; 3. 树的表示形式&#xff1a; 4. 树的应用&#xff1a; 1. 定义&#xff1a; 树是一种非线性的数据结构&#xff0c;&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有…

LeetCode——贪心算法(Java)

贪心算法 简介[简单] 455. 分发饼干[中等] 376. 摆动序列[中等] 53. 最大子数组和[中等] 122. 买卖股票的最佳时机 II[中等] 55. 跳跃游戏 简介 记录一下自己刷题的历程以及代码。写题过程中参考了 代码随想录的刷题路线。会附上一些个人的思路&#xff0c;如果有错误&#xf…

动态导入图片

起因&#xff1a;动态图片会自动拼接根路径&#xff0c;为了方便图片要放在public下解决&#xff1a;使用require引入图片资源注意&#xff1a;不能动态路径中使用require&#xff0c;如<img :src"require(…/assets/${item.imgUrl})" alt"" />{{ it…

MFC中内存共享调用方法及使用示例

在MFC&#xff08;Microsoft Foundation Classes&#xff09;中&#xff0c;内存共享是一种实现进程间通信的有效方法。以下是MFC中内存共享的调用方法以及一个基本的使用示例&#xff1a; 调用方法&#xff1a; 创建文件映射对象&#xff1a;使用CreateFileMapping函数创建一…

在 debian 虚拟机里如何设置 iso 文件为本地安装源

文章目录 在debian虚拟机里如何设置iso文件为本地安装源 <2023-07-10 周一> 在debian虚拟机里如何设置iso文件为本地安装源 这里有个坑&#xff0c;首先必须要先将iso文件加载好&#xff08;如何运行apt-cdrom后提示加载并按回车的话&#xff0c;后面可能出设置失败&am…

ARM 汇编指令:(三)运算处理指令

目录 一.add指令 二.sub指令 三.MUL指令 一.add指令 add用于执行实现两个寄存器或寄存机或寄存器与立即数的相加操作。它可以用于整数、浮点数等各种数据类型的加法运算。 ADD{cond}{S} Rd,操作数,操作数 1.不带进位加法指令add add r1, r2, #4 //r1 r2 4 add r1, r2 …

解决JVM进程被系统杀掉问题

背景 服务A在测试环境&#xff0c;隔几个小时接口就无法访问。登录机器查看&#xff0c;发现进程已经没了。大致猜想是进程使用的内存或CPU资源使用太多&#xff0c;导致被系统kill。 问题定位 使用dmesg命令查看进程被kill的详情。 > dmesg --time-format iso2024-03-0…

cv2.cvtColor()将二维转化为彩色图像

我们如果要将一维的图像转化为三维的彩色图像 import cv2 img cv2.cvtColor(img.squeeze(0), cv2.COLOR_GRAY2BGR) 这里的img.squeeze为二维数据&#xff0c;img为三维数据&#xff0c;所以压缩掉一个维度 。这样就将图像转化为了三维彩色图像。 cv2.imshow(Image, img) c…

EasyCode 插件的具体使用

前言 EasyCode 是基于IntelliJ IDEA Ultimate版开发的一个代码生成插件&#xff0c;主要通过自定义模板&#xff08;基于velocity&#xff09;来生成各种你想要的代码。通常用于生成Entity、Dao、Service、Controller。如果你动手能力强还可以用于生成HTML、JS、PHP等代码。理…

iOS 判断触摸位置是否在图片的透明区域

装扮功能系列&#xff1a; Swift 使用UIScrollerView 实现装扮功能&#xff08;基础&#xff09;Swift 使用UIScrollerView 实现装扮功能&#xff08;拓展&#xff09;iOS 判断触摸位置是否在图片的透明区域 背景 在装扮功能中&#xff0c;一般都是长按使道具进入编辑状态&…

AI与法律:大模型在法律文书生成中的应用与前景

AI与法律&#xff1a;大模型在法律文书生成中的应用与前景 测试&#xff1a; 评估指标&#xff1a;使用BLEU、ROUGE等指标评估生成质量。 模型压缩&#xff1a;通过剪枝、量化等方法减小模型大小。 模型部署&#xff1a;将模型部署到服务器或移动端&#xff0c;实现实时生成…

Docker拉取镜像存储不足

在使用Docker时&#xff0c;我们经常遇到一个问题&#xff0c;就是拉取镜像时提示存储空间不足。这是因为Docker在拉取镜像时需要将镜像文件下载到本地存储中&#xff0c;而有时本地存储空间不足以容纳完整的镜像文件。 本文将介绍一些解决这个问题的方法&#xff0c;并提供相…

Java学习笔记(11)

面向对象进阶 Static 静态变量 所有对象一起共享&#xff0c;就用static修饰 不属于对象&#xff0c;属于类的 可以用 类名.静态变量 “”&#xff1b;赋值 但是 对象.静态变量也可以访问到内容 Static内存图 Student这个类的字节码文件加载到方法区&#xff0c;并在内…