Skip to content

SQLite

安装

Ubuntu 安装

apt update

apt install sqlite3

Windows 安装

  • 访问 https://sqlite.org/download.html ,下载文件 sqlite-tools-win-x64-abc123.zip ,解压到 C:\sqlite
  • 添加 C:\sqlite 到 PATH 环境变量
  • 打开命令行,执行命令 sqlite3 --version ,验证安装结果

增查改删

准备建表文件 new.sql

CREATE TABLE users (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    age INTEGER NOT NULL DEFAULT 0
)

集合内的元素是互异的,自增数字 id 是保底方案,最是稳妥。

SQLite 文件型数据库, Storage Classes 有 INTEGER、TEXT、REAL、BLOB、NULL ,并具有 Type Affinity 。往常规数据库整数字段插入 'abc',直接报错,SQLite 则可以保存,比较自由,像 Excel 。如果编程语言和数据库都处理数据类型验证和文本长度,好处是稳妥,缺点是繁琐,SQLite 的特性则减少了困惑。

执行建库命令

sqlite3 test.db < new.sql

查看表名,查看表结构。

sqlite3 test.db .table

sqlite3 test.db .schema

准备数据文件 data.sql

INSERT INTO users (name, age) VALUES ('张三', 25);
INSERT INTO users (name, age) VALUES ('李四', 30);

执行插入数据命令

sqlite3 test.db < data.sql

查询数据

sqlite3 test.db "SELECT * FROM users"

修改数据,并查询结果。

sqlite3 test.db "UPDATE users SET age = 28 WHERE id = 2"

sqlite3 test.db ".header on" "SELECT * FROM users"

删除数据,并查询结果。

sqlite3 test.db "DELETE FROM users WHERE id = 1"

sqlite3 test.db ".header on" "SELECT * FROM users"

备份

准备备份 backup.sql

VACUUM INTO 'backup.db'

执行备份命令

sqlite3 test.db < backup.sql

导出 JSON

SQLite 高版本支持导出 JSON 格式。

sqlite3 test.db ".mode json" "SELECT * FROM users" > users.json

联系 math@baima.site