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


    前言

    今天我们花费一个小时快速了解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 支持以下五个日期和时间函数:

    序号函数实例
    1date(timestring, modifier, modifier, ...)以 YYYY-MM-DD 格式返回日期。例如:date('2023-11-22') 返回 '2023-11-22'。
    2time(timestring, modifier, modifier, ...)以 HH:MM:SS 格式返回时间。例如:time('14:30:45') 返回 '14:30:45'。
    3datetime(timestring, modifier, modifier, ...)以 YYYY-MM-DD HH:MM:SS 格式返回。例如:datetime('2023-11-22 14:30:45') 返回 '2023-11-22 14:30:45'。
    4julianday(timestring, modifier, modifier, ...)这将返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数。例如:julianday('2023-11-22') 返回对应的天数2460270.5。
    5strftime(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

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

    1. 在命令提示符下,输入以下命令来打开SQLite命令行:sqlite3
    2. .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):

    创建表:

    1. CREATE TABLE school (
    2.     ID INTEGER PRIMARY KEY,
    3.     school_name TEXT,
    4.     school_address TEXT
    5. );

    插入数据:

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

    查询数据:

    1. SELECT ID, school_name, school_address
    2. FROM school
    3. WHERE school_name = '追逐时光者学校';

    更新数据:

    1. UPDATE school
    2. SET school_address = '深圳南山区'
    3. WHERE ID = 1;

    删除数据:

    1. DELETE FROM school
    2. WHERE ID = 1;

    组合查询:

    1. SELECT s.school_name, s.school_address, t.teacher_name
    2. FROM school s
    3. JOIN teacher t ON s.ID = t.school_ID;

    排序数据:

    1. SELECT ID, school_name, school_address
    2. FROM school
    3. ORDER BY school_name ASC;

    聚合函数:

    1. SELECT COUNT(*FROM school;
    2. SELECT MAX(ID) FROM school;

    索引操作:

    1. -- 创建索引
    2. CREATE INDEX idx_school_name ON school (school_name);
    3. -- 删除索引
    4. DROP INDEX idx_school_name;

    DotNetGuide技术社区交流群

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

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

  • 相关阅读:
    (附源码)计算机毕业设计SSM基于的民宿租赁系统
    普中A6开发版——XPT2046四引脚切换测量(含详细教程以及原理图等资料)
    zookeeper实现分布式锁
    【python自动化】02. pywin32库自动操作键鼠(保姆级代码注释)
    npm run build 打包报错 - 添加 parallel: false, 解决
    wangEditor小插件快捷开发
    力扣记录:剑指offer(4)——JZ33-42
    中文编程开发语言工具系统化教程零基础入门篇和初级1专辑课程已经上线,可以进入轻松学编程
    SpringCloud - OpenFeign 参数传递和响应处理(全网最详细)
    【动态规划】【C++算法】2742. 给墙壁刷油漆
  • 原文地址:https://blog.csdn.net/qq_37237487/article/details/134563781