【SQLite】SQLite3下载、安装、数据库操作保姆级教程(2026最新,超详细)

简介: SQLite 是全球最流行的嵌入式关系数据库引擎,无需安装服务、零配置、单文件(.db)存储,直接以 C 库形式嵌入应用。广泛用于移动App、桌面软件、IoT设备及开发测试,支持标准SQL与ACID事务,跨平台、轻量高效。(239字)

SQLite 是目前全球使用最广泛的嵌入式关系数据库引擎,它不是一个独立的数据库服务器(不像 MySQL 或 PostgreSQL 那样需要安装和启动服务),而是一个 C 语言库,直接嵌入到应用程序中。这意味着它不需要配置、不需要管理员、不需要网络端口,所有数据都存储在一个单一的 .db 或 .sqlite 文件中。


SQLite 在移动应用、嵌入式设备、桌面软件和开发测试中几乎无处不在。Android 和 iOS 的系统应用数据存储、浏览器书签、微信聊天记录、不少游戏存档,底层都是 SQLite。它的核心价值是零配置、零服务、一个文件就能跑关系型数据库。


对比一下常见的数据库方案:


特性 SQLite MySQL PostgreSQL SQL Server
类型 嵌入式关系型数据库 关系型数据库(客户端-服务器) 关系型数据库(客户端-服务器) 关系型数据库(客户端-服务器)
安装配置 零配置(无服务器) 需安装服务端 需安装服务端 需安装服务端
存储方式 单文件 (.db) 多文件+服务管理 多文件+服务管理 多文件+服务管理
并发支持 单写多读 高并发 高并发 高并发
SQL 标准 大部分支持 完整 完整 完整
数据类型 动态类型 静态类型 静态类型 静态类型
数据库大小限制 281TB 取决于系统 无限制 524PB
跨平台 所有平台 所有平台 所有平台 仅 Windows+Linux
适合场景 本地/嵌入式/移动 Web 应用 Web 应用/数据分析 企业级应用
价格 完全免费 免费+付费 完全免费 付费


SQLite 最大的吸引力在于,你不需要装任何服务、不需要创建用户和权限、不用管端口和防火墙,下载一个命令行工具就能开始写 SQL。


sqlite3 是官方提供的 SQLite 命令行交互工具,下载后你会在终端里直接输入 SQL 语句来创建数据库、建表、插入和查询数据,不需要安装任何图形界面。


对于开发者快速测试、数据分析师处理本地数据、或者想学 SQL 的初学者来说,sqlite3 是一个零门槛的入门工具,打开终端输入一条命令就能开始写 SQL,比装 MySQL 那一整套环境省事太多了。这套教程就是教你下载、安装和使用 sqlite3 命令行工具的完整流程。

SQLite下载

SQLite3安装包下载地址:SQLite3安装包(源自官网,Windows+Linux+macOS,放心使用)

  • Windows 用户下载 sqlite-tools-win-x64 压缩包(包含 sqlite3.exe 命令行工具和 sqldiff、sqlite3_analyzer 等辅助工具);
  • macOS 用户根据芯片选择 sqlite-tools-osx-arm64(M 芯片)或 sqlite-tools-osx-x64(Intel 芯片);
  • Linux 用户下载 sqlite-tools-linux-x64 压缩包。

如果需要在程序中使用 SQLite,还需要下载对应平台的 DLL 或动态库文件。

SQLite安装(含配置环境变量)

下载 sqlite-tools-win-x64 压缩包,解压到一个文件夹里,比如解压到 D:\sqlite(记住这个路径):



为了在命令行中直接使用 sqlite3 命令,需要把这个文件夹路径添加到系统环境变量的 Path 中,操作步骤是:

1)右键点击"此电脑"或"计算机",选择"属性":



2)然后点击"高级系统设置":



3)在系统属性窗口中,点击"环境变量"按钮:



4)在系统变量部分,找到并选中"Path"变量,点击"编辑":



5)点击"新建",添加 "D:\sqlite",然后点击"确定"保存所有更改。



6)验证安装是否成功。按组合键 Win+R,输入cmd打开命令提示符(cmd),输入 sqlite3 显示出版本信息,说明配置成功:


sqlite3常用命令

SQLite 不需要像 MySQL 那样启动数据库服务,也不需要创建数据库。在命令行中输入 sqlite3 test.db,就会自动创建一个名为 test.db 的数据库文件(如果不存在的话)并进入交互模式。


下面列出最常用的几个 sqlite3 命令:


命令 使用场景 作用
sqlite3 test.db 启动时 打开或创建 test.db 数据库,进入交互模式
.open test.db 交互模式 在交互模式中打开或创建 test.db(切换数据库不用退出重开)
.databases 交互模式 查看当前打开了哪些数据库文件及其路径
.tables 交互模式 列出当前数据库中的所有表
.schema 表名 交互模式 查看指定表的建表语句(不跟表名则查看所有表)
.import 文件.csv 表名 交互模式 将 CSV 文件的数据导入到指定表中
.output 文件名 交互模式 将后续查询结果保存到文件(.output stdout 恢复屏幕输出)
.dump 交互模式 将整个数据库导出为 SQL 脚本,用于备份和迁移
.mode column 交互模式 设置查询结果按列对齐显示(加 .headers on 同时显示列名)
.exit / .quit 交互模式 退出 sqlite3 交互模式
.help 交互模式 查看所有可用点命令的帮助列表


上面的表格只列了 sqlite3 本身的命令,熟悉了这些就能在终端里流畅操作了在数据库中执行增删改查的操作(如 CREATE TABLE、SELECT),直接在 sqlite> 提示符后输入,以分号结尾。

【实例】创建图书管理数据库

下面用一个实际的例子来演示 sqlite3 的完整操作流程,创建一个图书管理数据库,包含图书表和作者表,然后做增删改查。

1)创建数据库

打开命令行,输入 sqlite3 books.db。如果 books.db 不存在,SQLite 会自动创建它。你会看到提示符变成 sqlite>,说明已进入交互模式。输入 .databases 确认数据库文件已经创建成功。


2)建表

先创建作者表,再创建图书表,两张表通过作者 ID 关联。


在 sqlite> 提示符下依次输入:

CREATE TABLE authors (id INTEGER PRIMARY KEY, name TEXT NOT NULL, country TEXT);
CREATE TABLE books (id INTEGER PRIMARY KEY, title TEXT NOT NULL, year INTEGER, author_id INTEGER, FOREIGN KEY (author_id) REFERENCES authors(id));

输入 .tables 可以看到两张表都已创建。输入 .schema 可以查看两张表的完整建表语句。


3)插入数据

先插入作者数据:

INSERT INTO authors (name, country) VALUES ('刘慈欣', '中国');
INSERT INTO authors (name, country) VALUES ('J.K. Rowling', '英国');
INSERT INTO authors (name, country) VALUES ('村上春树', '日本');


再插入图书数据:

INSERT INTO books (title, year, author_id) VALUES ('三体', 2008, 1);
INSERT INTO books (title, year, author_id) VALUES ('黑暗森林', 2008, 1);
INSERT INTO books (title, year, author_id) VALUES ('Harry Potter', 1997, 2);
INSERT INTO books (title, year, author_id) VALUES ('挪威的森林', 1987, 3);

4)查询数据

先用 .mode column.headers on 把输出格式调好看些。然后查所有图书:

SELECT * FROM books;


条件查询,比如查某位作者的书:

SELECT title, year FROM books WHERE author_id = 1;

5)修改和删除

更新数据,比如把《三体》的出版年份改一下:

UPDATE books SET year = 2006 WHERE title = '三体';

删除数据,比如删除某条图书记录:

DELETE FROM books WHERE title = '挪威的森林';

注意 DELETE 后最好用 WHERE 限定条件,否则会删除整张表的数据。

6)导出和退出

用 .output 把查询结果保存到文件:.output books.txt,然后执行 SELECT * FROM books;,结果会写入 books.txt 而不是显示在屏幕上。不想保存了,输入 .output stdout恢复屏幕输出。



.dump > books_backup.sql导出整个数据库的 SQL 备份(保存位置就在 C:\Users\Administrator>)。最后输入 .exit 退出。



把上面所有的 SQL 语句走一遍,你就完成了 sqlite3 从建库到备份的完整流程。以后遇到任何需要本地存储的小型数据,都可以用同样的步骤快速搭建起来。

常见使用问题

1)输入 sqlite3 提示"不是内部或外部命令"或"command not found"

环境变量没有配置对,检查 sqlite3.exe 所在的文件夹路径是否已添加到系统的 Path 变量中,添加后重新打开命令行窗口。

2)SQLite 的数据库文件在其他电脑上打不开

SQLite 的数据库文件是跨平台的,在 Windows 上创建的 .db 文件可以直接复制到 macOS 或 Linux 上使用,反之亦然。打不开通常是因为文件损坏了(比如在写入过程中强行断电),可以用 .recover 命令尝试恢复:sqlite3 damaged.db ".recover" | sqlite3 recovered.db。

总结

SQLite 是一个零配置、单文件的嵌入式数据库引擎,和 MySQL、PostgreSQL 这种需要专门部署管理的数据库服务相比,它最大的优势就是简单,下载解压就能用、一个 .db 文件就是一整个数据库、不需要网络配置和用户管理。


对于个人工具、移动应用、嵌入式设备、桌面软件以及本地数据分析场景来说,SQLite 是效率和便捷性兼顾的选择。安装 SQLite 其实不是传统意义上的"安装",解压命令行工具配置好环境变量就能开始写 SQL。从打开数据库到创建表到写查询,整个过程不需要退出命令行,也不需要启动任何后台服务。

相关文章
|
6天前
|
缓存 人工智能 安全
GPT-5.6 Terra与GPT-5.5性能实测:成本减半后的跑分对比与快速迁移指南
GPT-5.6 Terra 的定价为每百万 token 输入 2.50/输出 15。GPT-5.5 则是 5/ 30。Terra 的每一项费率,包括 $0.25/M 的缓存读取,都恰好是 GPT-5.5 的一半,因此在任何工作负载组合下,Terra 都固定 便宜 2.0x。以每天 10 万次请求、3K token 提示词计算,大约是 Terra 每天 2,000,GPT−5.5每天 4,000,即每月约 60,000对 120,000。问题在于:OpenAI 没有发布任何针对 Terra 的编码基准。那个著名的 91.9% Terminal-Bench 数字是 Sol 在 Ul
|
2天前
|
数据采集 机器学习/深度学习 人工智能
田间杂草定位与检测4200张YOLO智慧农业数据集分享
本数据集含4200张真实农田图像,YOLO格式,单类别(杂草)高质量标注,覆盖多作物、多光照、多生长阶段等复杂场景,专为智慧农业杂草检测与智能除草设备研发设计,支持YOLOv5/v8/v10等主流模型训练。
327 93
|
3天前
|
缓存 UED 开发者
Codex109天重置23次,明天还要再送一次
Codex近109天完成23次额度重置,7月14日将迎来第24次。Tibo高频响应用户反馈:优化GPT-5.6高消耗问题、补发失效福利、调整重置时间——形成“反馈→回应→修复→补偿”正向闭环,彰显以用户为中心的产品哲学。(239字)
505 11
|
6天前
|
人工智能 缓存 JSON
刚刚 GPT-5.6 发布,吊打 Claude 5 和 Grok 4.5?一手实测来啦!
GPT-5.6 刚发布,跑分号称超越 Fable 5,真的假的?附一手实测,让 3 个最强 AI 编程模型 GPT-5.6 Sol、Claude Fable 5、Grok 4.5 在 Cursor 里同时一把梭开发网页游戏,看看最新模型到底谁更能打。
340 0
|
6天前
|
存储 人工智能 JSON
Qwen 本地部署搭配 ComfyUI 生成 AI 漫剧完整实操指南(小白零基础可落地,零成本无限生成+角色一致性天花板)
2026全网最优本地漫剧流水线:零成本、离线运行、角色统一、低配(8G显卡)可跑。融合Qwen本地大模型+ComfyUI双引擎,实现剧本生成→分镜绘图→动态成片全自动,隐私安全、无审核限流,新手30分钟上手,日更无忧。(239字)