前言

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

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

EasySQLite项目源码地址

GitHub地址:https://github.com/YSGStudyHards/EasySQLite

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 date(timestring, modifier, modifier, ...) 以 YYYY-MM-DD 格式返回日期。例如:date('2023-11-22') 返回 '2023-11-22'。
2 time(timestring, modifier, modifier, ...) 以 HH:MM:SS 格式返回时间。例如:time('14:30:45') 返回 '14:30:45'。
3 datetime(timestring, modifier, modifier, ...) 以 YYYY-MM-DD HH:MM:SS 格式返回。例如:datetime('2023-11-22 14:30:45') 返回 '2023-11-22 14:30:45'。
4 julianday(timestring, modifier, modifier, ...) 这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。例如:julianday('2023-11-22') 返回对应的天数2460270.5。
5 strftime(format, timestring, modifier, modifier, ...) 这将根据第一个参数指定的格式字符串返回格式化的日期。具体格式见下边讲解。例如:strftime('%Y-%m-%d %H:%M:%S', '2023-11-22 14:30:45') 返回格式化后的日期字符串2023-11-22 14:30:45。

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;

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目推荐、招聘资讯和解决问题的平台。
  • 在这个社区中,开发者们可以分享自己的技术文章、项目经验、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值和成长机会。

欢迎加入DotNetGuide技术社区微信交流群

七天.NET 8操作SQLite入门到实战 - 第三天SQLite快速入门的更多相关文章

  1. Docker从入门到实战(三)

    Docker从入门到实战(三) 一:安装Docker 1. linux系统脚本安装 Docker基于linux容器技术,面向服务器端,Docker只能安装运行在64位计算机上(社区有对32位的支持), ...

  2. 利用python 数据分析入门,详细教程,教小白快速入门

    这是一篇的数据的分析的典型案列,本人也是经历一次从无到有的过程,倍感珍惜,所以将其详细的记录下来,用来帮助后来者快速入门,,希望你能看到最后! 需求:对obo文件进行解析,输出为json字典格式 数据 ...

  3. Prometheus 入门教程(一):Prometheus 快速入门

    文章首发于[陈树义]公众号,点击跳转到原文:https://mp.weixin.qq.com/s/ZXlBPHGcWeYh2hjBzacc3A Prometheus 是任何一个高级工程师必须要掌握的技 ...

  4. vue2.0项目实战(5)vuex快速入门

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具  ...

  5. reactjs入门到实战(三)---- 组件详解

    owner  >>> 传递 props this >>>是默认指向组件本身 key>>>不能没有,在复用的情况下 组件:例子 <!-- 输入 ...

  6. 学习笔记-[Maven实战]-第三章:Maven使用入门(3)

    这里说一下在建测试工程里遇到的问题 1.第一次建工程,junit依赖始终没有成功,最后删除现在工程,新建了一个工程就好了 2.使用junit4的问题.工程默认的依赖是junit3.8.1,我改成了4. ...

  7. 学习笔记-[Maven实战]-第三章:Maven使用入门(2)

    使用maven执行编译和测试 1.maven执行编译 (1).在pom.xml上点右键,选择Maven build... (2).在Goals里输入clean complie,执行编译 执行结果: [ ...

  8. 学习笔记-[Maven实战]-第三章:Maven使用入门(1)

    说明:[Maven实战]一书还介绍了怎么样手工创建Maven工程,学习这本书是为了能尽快在工作中使用,就忽略了手工建工程的部分 如果想了解这部分的内容,可以自己看看书 开始: 1.新建一个maven工 ...

  9. Spring MVC 教程,快速入门,深入分析

    http://elf8848.iteye.com/blog/875830/ Spring MVC 教程,快速入门,深入分析 博客分类: SPRING Spring MVC 教程快速入门  资源下载: ...

  10. Spring_MVC_教程_快速入门_深入分析

    Spring MVC 教程,快速入门,深入分析 博客分类: SPRING Spring MVC 教程快速入门  资源下载: Spring_MVC_教程_快速入门_深入分析V1.1.pdf Spring ...

随机推荐

  1. go run 和 go build的区别

    go run:编译并运行程序,但不会产生exe文件,运行速度也相应较慢 go build : 会产生exe文件,运行速度快

  2. .NET下数据库的负载均衡“经典方案”(大项目必备,建议收藏)

    [前言] 本文讲述的"数据库负载均衡"方案,为市面上最经典(没有之一),由.NET界骨灰级大佬推出.采用该技术方案的大公司,一年省下了几个亿的支出. [正文] 支持.Net Cor ...

  3. 什么是PMP?

    PMP(Project Management Professional)中文名称叫项目管理专业人士资格认证.它是由美国项目管理协会(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证 ...

  4. 从module_init看内核模块

    开篇 module_init是linux内核提供的一个宏, 可以用来在编写内核模块时注册一个初始化函数, 当模块被加载的时候, 内核负责执行这个初始化函数. 在编写设备驱动程序时, 使用这个宏看起来理 ...

  5. 青少年CTF平台-Web-POST&GET

    题目描述 一星简单题,看我如何给你过了. 启动环境,等待三十秒先喝口水. 做题过程 访问题目地址,说让我们用GET方式提交一个名称为get且值为0的变量. 在URL后面加上?get=0,回车.已经成功 ...

  6. maxwell数据抓取工具

    前言 maxwell是一款开源MySQL数据抓取工具,可以读取MySQL的binlog,然后转换成json并输出到kafka.redis等消息队列中. bin/maxwell,用于增量抓取 bin/m ...

  7. [jmeter]快速入门

    前言 以压测一个api为例.假设有一个非常简单的api http://192.168.1.111:8080/,只是返回 helloworld 字符串. 准备 打开 jmeter,新建测试计划 在测试计 ...

  8. [etcd]基本数据库操作

    前言 etcd数据库操作基本围绕着对键值和目录的CRUD操作,以及生命周期的管理. 之前在单节点部署了三实例集群,而etcdctl默认找的是127.0.0.1:2379,所以这里先声明一个临时全局变量 ...

  9. 产品代码都给你看了,可别再说不会DDD(二):DDD概念大白话

    这是一个讲解DDD落地的文章系列,作者是<实现领域驱动设计>的译者滕云.本文章系列以一个真实的并已成功上线的软件项目--码如云(https://www.mryqr.com)为例,系统性地讲 ...

  10. 《SQL与数据库基础》13. 视图

    目录 视图 简介 语法 检查选项 视图更新 视图作用 本文以 MySQL 为例 视图 简介 视图(View)是一种虚拟存在的表.视图中的数据并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的 ...