前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >七天.NET 8操作SQLite入门到实战 - 第三天SQLite快速入门

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

作者头像
追逐时光者
发布2023-11-23 10:00:50
4160
发布2023-11-23 10:00:50
举报
文章被收录于专栏:编程进阶实战

前言

今天我们花费一个小时快速了解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常用命令

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

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

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

建立或打开数据库文件:

代码语言:javascript
复制
sqlite3 MyTest.db

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

代码语言:javascript
复制
.database

查看所有表的创建语句:

代码语言:javascript
复制
.schema

查看指定表的创建语句:

代码语言:javascript
复制
.schema UserInfo

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

代码语言:javascript
复制
.dump UserInfo

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

代码语言:javascript
复制
.show

退出SQLite终端命令:

代码语言:javascript
复制
.quit

代码语言:javascript
复制
.exit

SQLite常用语法

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

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

创建表:

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

插入数据:

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

查询数据:

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

更新数据:

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

删除数据:

代码语言:javascript
复制
DELETE FROM school
WHERE ID = 1;

组合查询:

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

排序数据:

代码语言:javascript
复制
SELECT ID, school_name, school_address
FROM school
ORDER BY school_name ASC;

聚合函数:

代码语言:javascript
复制
SELECT COUNT(*) FROM school;
SELECT MAX(ID) FROM school;

索引操作:

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

-- 删除索引
DROP INDEX idx_school_name;

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目推荐、招聘资讯和解决问题的平台。
  • 在这个社区中,开发者们可以分享自己的技术文章、项目经验、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值和成长机会。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 七天.NET 8操作SQLite入门到实战详细教程
  • EasySQLite项目源码地址
  • SQLite数据类型
  • SQLite日期和时间函数
  • SQLite常用命令
    • 输出帮助信息:
      • 创建一个新的数据库文件:
        • 建立或打开数据库文件:
          • 查看数据库文件信息命令:
            • 查看所有表的创建语句:
              • 查看指定表的创建语句:
                • 以SQL语句的形式列出表内容:
                  • 列出当前显示格式的配置:
                    • 退出SQLite终端命令:
                    • SQLite常用语法
                      • 创建表:
                        • 插入数据:
                          • 查询数据:
                            • 更新数据:
                              • 删除数据:
                                • 组合查询:
                                  • 排序数据:
                                    • 聚合函数:
                                      • 索引操作:
                                      • DotNetGuide技术社区交流群
                                      相关产品与服务
                                      领券
                                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档