作者主页:Designer 小郑
作者简介:软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue、SpringBoot和微信小程序)、系统定制、远程技术指导。CSDN学院、蓝桥云课认证讲师,全栈领域优质创作者,在校期间参加PAT乙级考试获得满分,三年ACM竞赛经验,斩获国奖两项,省奖五项。热爱技术、专注业务、开放合作、乐于分享,期待你我共同成长!
主打方向:Vue、SpringBoot、微信小程序

在上一篇 【SQLite】二、SQLite 和 HeidiSQL 的安装 中,已经讲了如何安装配置 SQLite,接下来将讲解 SQLite 的常用语法。

每门编程语言都有自己独特的语法,编程语言的语法是编程规则的体现。

SQLite 的语法类似于 SQL,如果学过 SQL 的同学会发现学习 SQLite 非常简单。

SQLite 不区分大小写,但部分命令有不同的含义,你只要记住 GLOBglub 这个特例就可以了。

SQLite 的语法有很多,我们可以根据二八定律,掌握常用的就可以了,不常用的等用到了再去翻字典即可。

接下来逐个示范常用的 SQLite 语法。

0 HeidiSQL 的启动

在讲解 SQLite 语法之前,需要打开之前安装的 HeidiSQL,让这个可视化工具简化我们对 SQLite 的操作。

点击左下角的 新建 按钮。

新建连接后,进行 重命名 操作,同学们可以重命名为 SQLite

下一步选择网络类型,展开下拉框后,选择 SQLite

接着展开数据库文件名,选择添加数据库文件,如下图所示。


因为是测试所需,同学们可以随意输入文件名,点击 打开 即可,如下图所示。


创建完成后点击 打开,进入 SQLite 数据库,如下图所示。

进入成功后,界面如下图所示。

为了完善数据,同学们可以复制以下命令在查询面板中执行数据初始化操作。

-- 创建数据库
DROP DATABASE IF EXISTS "test";
CREATE DATABASE IF NOT EXISTS "test";
-- 创建数据表
DROP TABLE IF EXISTS "student";
CREATE TABLE IF NOT EXISTS student(code CHAR(50)  PRIMARY KEY NOT NULL,NAME CHAR(50) NOT NULL,AGE INT NOT NULL,mobile CHAR(50) NOT NULL
);
-- 新增数据
DELETE FROM "student";
INSERT INTO "student" ("code", "NAME", "AGE", "mobile") VALUES('001', 'ZWZ1', 18, '13600000001'),('002', 'ZWZ2', 19, '13600000002'),('003', 'ZWZ3', 20, '13600000003'),('004', 'ZWZ4', 21, '13600000004'),('005', 'ZWZ5', 22, '13600000005'),('006', 'ZWZ6', 23, '13600000006'),('007', 'ZWZ7', 24, '13600000007');

1 注释

注释的作用是为了增加 SQLite 代码的可读性

SQLite 注释的语法是以两个连续的 - 字符开头,注释不能嵌套。

比如对于查询语句:

SELECT * FROM USER

我们执行后正常查询,如下图所示。

添加注释之后,如下所示。

SELECT * FROM student -- 测试注释

发现添加注释后不影响查询结果

2 SELECT 语句

SELECT 语句用于对数据的查询。

已知数据库中有这样 6 条数据,如下图所示。


执行 SELECT 语句,即可完成对数据的查询操作。

SELECT * FROM student

查询结果如下图所示。

3 INSERT 语句

INSERT 语句用于对数据的新增。

已知数据库中有 student 表,表的字段设计如下图所示。

数据表中的数据现有六条,如下图所示。


使用 INSERT 字句设计如下的命令,执行后再次查询。

-- 新增
INSERT INTO "student" ("code", "NAME", "AGE", "mobile") VALUES ('007', 'ZWZ7', 27, '13600000007');
-- 查询
SELECT * FROM student;

执行后再次执行 SELECT 语句,发现数据新增了,如下图所示,说明 INSERT 命令执行成功。

4 UPDATE 语句

UPDATE 语句用于对数据的编辑。

已知数据库中有 student 表,表的数据如下图所示。

使用 UPDATE 字句设计以下命令。

UPDATE student SET AGE = 20;

执行后再次执行查询语句

SELECT * FROM student;

发现数据表的 AGE 字段已被编辑,说明 UPDATE 字句执行成功,如下图所示。

5 DELETE 语句

DELETE 语句用于对数据的删除。

已知数据库中有 student 表,表的数据如下图所示。


使用 DELETE 字句设计以下命令,如下所示。

// 删除数据
DELETE FROM student;
-- 再次查询
SELECT * FROM student;

删除后再次使用 SELECT 字句查询,发现数据已被清空,说明 DELETE 命令执行成功。

6 WHERE 语句

WHERE 语句用于实现条件判断。

已知数据库中有 student 表,表的数据如下图所示。


我们在 SELECT 查询命令的尾部增加 WHERE 字句,设计成如下所示。

SELECT * FROM student WHERE AGE > 20;

执行后发现 AGE 字段不符合条件的数据已被隐藏,只显示了符合条件的数据,如下图所示。

其中 > 符号是一个比较运算符,用于检查左操作数的值是否大于右操作数的值,如果是则条件为真。

比较运算符包括了 ><=<> 等,会在下面的章节详细讲解,现在只需要简单了解即可。

再试一个 ‘<=’ 比较运算符,用于检查左操作数的值是否小于等于右操作数的值,如果是则条件为真。

设计 SQLite 命令如下所示。

SELECT * FROM student WHERE AGE <= 20;

查询结果如下图所示,年龄大于 20 的数据已被隐藏。

7 LIKE 语句

LIKE 语句用于实现字符串的模拟匹配,如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真。

在学习 LIKE 语句之前首先要了解通配符的概念。

  • 百分号:% 代表任意位字符,可以为零个、一个或多个数字或字符。
  • 下划线:_ 代表一个数字或字符

以上两个通配符可以组合使用。

现有如下的 SQLite 语句:

SELECT * FROM student WHERE MOBILE LIKE '%';

该命令可以查询 MOBILE 字段存在任意位数字或字符的数据,执行结果如下所示。

将 SQLite 语句修改如下:

SELECT * FROM student WHERE MOBILE LIKE '%5';

代表只查询 MOBILE 字段以字符 5 结尾的数据,查询结果如下图所示。

8 AND 语句

AND 语句用于对多个条件进行 关系的组合条件判断,是连接运算符。

这些运算符为同一个 SQLite 语句中不同的运算符之间的多个比较提供了可能。

AND 运算符允许在 WHERE 子句存在多个条件。

使用 AND 运算符时,只有当所有条件都为真(true)时,整个条件为真(true)。

使用 AND 字句将 1.6 节和 1.7 节举例的两个条件加在一起,命令如下:

SELECT * FROM student WHERE MOBILE LIKE '%5' AND AGE > 20;

查询结果如下图所示,只展示了 MOBILE 字段以 5 结尾,并且 AGE 字段大于 20 的数据。

9 OR 语句

OR 语句用于对多个条件进行 关系的组合条件判断,是连接运算符。

这些运算符为同一个 SQLite 语句中不同的运算符之间的多个比较提供了可能。

OR 运算符允许在 WHERE 子句存在多个条件。

使用 OR 运算符时,只有当任一个条件都为真(true)时,整个条件为真(true)。

使用 OR 字句将 1.6 节和 1.7 节举例的两个条件加在一起,命令如下:

SELECT * FROM student WHERE MOBILE LIKE '%5' OR AGE > 20;

查询结果如下图所示,展示了 MOBILE 字段以 5 结尾,或者 AGE 字段大于 20 的数据。


10 小结

本文简单讲解了 SQLite 的常用语法,包括 SELECT 语句、INSERT 语句、UPDATE 语句、DELETE 语句、WHERE 语句、LIKE 语句、AND 语句、OR 语句和注释语法,另外还包括 HeidiSQL 的使用,下一节将讲解 SQLite 的数据类型和运算符。

【SQLite预习课3】SQLite 的常用语法相关推荐

  1. 【SQLite预习课2】SQLite 和 HeidiSQL 的安装

    作者主页:Designer 小郑 作者简介:浙江某公司软件工程师,负责开发管理公司OA.CRM业务系统,全栈领域优质创作者,CSDN学院.蓝桥云课认证讲师,开发过20余个前后端分离实战项目,主要发展方 ...

  2. 【SQLite预习课1】SQLite简介——MySQL的简洁版

    作者主页:Designer 小郑 作者简介:浙江某公司软件工程师,负责开发管理公司OA.CRM业务系统,全栈领域优质创作者,CSDN学院.蓝桥云课认证讲师,开发过20余个前后端分离实战项目,主要发展方 ...

  3. SQLite之C#连接SQLite

    SQLite之C#连接SQLite 2015-05-05 17:52  糯米粥  阅读(40651)  评论(1)  编辑  收藏 我的程序突然不能访问数据库了,回过头来再看这文章,才知道是自己的几天 ...

  4. 轻量级数据库sqlite,spring boot+sqlite的配置详解 (一)

    spring boot+sqlite的配置,及成功运行详解 sqlite数据库的安装与调试 首先,通过sqlite官方地址下载对应的安装包 https://www.sqlite.org/downloa ...

  5. Markdown通用的常用语法说明

    前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...

  6. jsp 4种常用语法3个编译指令7个动作指令

    4种常用语法: 注释:<%--注释--%> 声明:<%!声明部分%> 输出:<%=%> 脚本:可以包含任何java可执行代码.例 <% for(int i=0 ...

  7. [转]C++/CLI与C#常用语法对比

    [转]C++/CLI与C#常用语法对比 Kenny Kerr 一篇名为C++: The Most Powerful Language for .NET Framework Programming文章中 ...

  8. C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用?

    C#之windows桌面软件第十三课:C#中常用的类有哪些?构造函数怎么用? using System; using System.Collections.Generic; using System. ...

  9. 每天学一点儿shell:Shell的常用语法规则

    文章目录 Shell 参数传递 Shell 数组 Shell 基本运算符 算数运算符 关系运算符 布尔运算符 逻辑运算符 字符串运算符(重点) 文件测试运算符 Shell 常用语法 Shell 函数 ...

最新文章

  1. 安利 10 个 Intellij IDEA 实用插件
  2. TensorFlow---基础---GFile
  3. jquery 插件闭包
  4. sql事务、视图和索引
  5. linux命令行快捷键
  6. 2.JVM和DVM之间的区别
  7. 无限极 php算法,无限极分类算法,对你一定有帮助
  8. eclipse 字体设置 Courier New字
  9. 【数据结构和算法笔记】:图的储存方式(邻接矩阵,邻接表)
  10. eclipse常用快捷键整理
  11. 51nod 1526 分配笔名(字典树+贪心)
  12. TeaVM编译JAVA感想:看着简单,做起来真难
  13. redis 任务队列
  14. 软件分析与设计习题集
  15. matlab作图有拉盖尔,拉盖尔高斯光束matlab
  16. android 删除系统服务,不ROOT卸载系统自带应用
  17. 「 数学模型 」“三角函数化简公式”小结
  18. 进去计算机组策略的命令,组策略怎么打开,组策略命令打开方法
  19. 云科技时代,微软纳德拉与小米雷军为什么走到一起?
  20. Vue3.0中Watch的几个问题

热门文章

  1. 基于php的校园视频点播系统
  2. es统计mysql 报表_用Elasticsearch实现统计排行榜
  3. abb机器人开机后加载模块_ABB机器人外部启动配置说明
  4. 拨开发展迷雾,将“智慧”嵌入全业务场景【2022戴尔科技峰会预告】
  5. 计算机组成原理数据流通图作用,计算机组成原理-第14-15讲(第5章).ppt
  6. java基于word模板动态生成word及转pdf实践
  7. NDK No implementation found for void com.*
  8. 智慧医院(iHospital)_乳腺健康专栏
  9. ES MQ canal同步mysql
  10. MNIST手写数字识别 —— ResNet-经典卷积神经网络