七天.NET 8操作SQLite入门到实战 - 第三天SQLite快速入门

前言

今天我们花费一个小时快速了解SQLite数据类型、SQLite常用命令和语法。

七天.NET 8操作SQLite入门到实战详细教程

SQLite数据类型

以下是SQLite常见的五种数据类型及其详细描述:

数据类型 描述
NULL 空值。
INTEGER 值是一个带符号的整数,根据值的大小存储在1、2、3、4、6或8字节中。
REAL 浮点数字,存储为8-byte IEEE浮点数。
TEXT 文本字符串,使用数据库编码(UTF-8、UTF-16BE或UTF-16LE)存储。
BLOB 二进制对象。

SQLite日期时间数据展示和操作

在SQLite中,日期时间数据可以使用以下几种方式表示:

  1. 文本格式:日期时间可以以文本形式存储在SQLite的文本字段中,常见的日期时间格式包括"YYYY-MM-DD HH:MM:SS"(如"2023-11-20 15:05:52")或其他类似的格式。

  2. 整数值格式:日期时间也可以用整数或实数类型来表示,例如Unix时间戳(从1970年1月1日开始的秒数)等。

  3. SQLite内置的日期和时间函数:SQLite支持内置的日期和时间函数,包括DATE、TIME和TIMESTAMP等。这些内置函数可以用来操作日期、时间或日期时间的组合。

SQLite常用命令

输出帮助信息:
复制代码
.help

创建一个新的数据库文件:

复制代码
在命令提示符下,输入以下命令来打开SQLite命令行:sqlite3
.open MyTest.db

建立或打开数据库文件:

复制代码
sqlite3 MyTest.db

查看数据库文件信息命令:

复制代码
.database

查看所有表的创建语句:

复制代码
.schema

查看指定表的创建语句:

复制代码
.schema UserInfo

以SQL语句的形式列出表内容:

复制代码
.dump UserInfo

列出当前显示格式的配置:

复制代码
.show

退出SQLite终端命令:

复制代码
.quit

或

复制代码
.exit

SQLite常用语法

SQLite是一种嵌入式关系型数据库,它支持SQL语言。大部分标准的SQL语法在SQLite中都可以使用,但也有一些特性和限制。

  • 以下是SQLite常用的SQL语法(请注意,具体语法细节可能会因版本和环境而有所不同,我当前使用的是SQLite3):

创建表:

复制代码
CREATE TABLE school (
    ID INTEGER PRIMARY KEY,
    school_name TEXT,
    school_address TEXT
);

插入数据:

复制代码
INSERT INTO school (ID, school_name, school_address)
VALUES (1, '追逐时光者学校', '北京市某区某街道');

查询数据:

复制代码
SELECT ID, school_name, school_address
FROM school
WHERE school_name = '追逐时光者学校';

更新数据:

复制代码
UPDATE school
SET school_address = '深圳南山区'
WHERE ID = 1;

删除数据:

复制代码
DELETE FROM school
WHERE ID = 1;

组合查询:

复制代码
SELECT s.school_name, s.school_address, t.teacher_name
FROM school s
JOIN teacher t ON s.ID = t.school_ID;

排序数据:

复制代码
SELECT ID, school_name, school_address
FROM school
ORDER BY school_name ASC;

聚合函数:

复制代码
SELECT COUNT(*) FROM school;
SELECT MAX(ID) FROM school;

索引操作:

复制代码
-- 创建索引
CREATE INDEX idx_school_name ON school (school_name);

-- 删除索引
DROP INDEX idx_school_name;
相关推荐
AIgorithmGEEK6 小时前
MySQL 索引全解(下):建、查、删实战与知识速查表
数据库·mysql·b+树·索引
唠点键盘之外的8 小时前
26 向量数据库实战:从 0 搭一条能用的检索链路(pgvector + Spring AI)
数据库·人工智能·spring
IT规划师8 小时前
MQTT实战 - 用了8年MQTT,我为什么还要重新系统啃一遍(一)
物联网·.net
云和恩墨8 小时前
数据库监控简史:监控不止于告警——从图表大爆发到健康管理闭环
数据库
ly76898 小时前
MongoDB 事务开销实测:快照隔离下的写冲突、重试与分片事务边界
数据库·mongodb·事务·分片集群·快照隔离·写冲突
豆角焖肉8 小时前
Spring AOP 自定义注解实现系统操作日志
数据库·自定义注解·springaop·操作日志·aop 切面
金伟API10249 小时前
不会写复杂SQL怎么办?
数据库·sql
执笔为剑10 小时前
2.1.2-1、V8R3迁移到V8R6-Oracle兼容特性
数据库
geovindu10 小时前
sql:Search-Optimized SQL Queries using mysql 9.0
android·数据库·sql·mysql·数据库开发·数据库架构
for_ever_love__10 小时前
MySQL SELECT 与 WHERE 优化实战:可搜索条件、联合索引与执行计划
数据库·mysql·oracle·select·where·条件优化·查询优化技巧