SQLite 文件数据库详解
SQLite 是一个轻量级、嵌入式的关系型数据库,它将所有数据存储在单一的文件中,无需独立的服务器进程。广泛应用于移动端、桌面软件、嵌入式设备和小型 Web 项目。
1. 核心特点
- 文件存储
所有数据、表结构和索引都保存在一个.sqlite或.db文件中。 - 零配置
无需安装和配置数据库服务器,直接读写文件即可。 - 跨平台
支持 Windows、Linux、macOS、Android、iOS 等主流平台。 - 高可靠性
支持事务(ACID)、自动恢复和数据一致性。
2. 工作原理
- SQLite 通过标准 SQL 语句操作数据。
- 应用程序通过 SQLite 库直接读写数据库文件。
- 支持多进程/多线程并发读,写操作采用锁机制保证数据安全。
3. 典型应用场景
- 移动应用本地存储(如微信、QQ、iOS/Android App)
- 桌面软件数据管理(如浏览器历史、配置文件)
- 嵌入式设备数据存储
- 小型网站或原型开发
4. 基本操作示例(Python)
import sqlite3
# 连接数据库文件(不存在则自动创建)
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 创建表
cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)')
# 插入数据
cursor.execute('INSERT INTO users (name) VALUES (?)', ('Alice',))
conn.commit()
# 查询数据
cursor.execute('SELECT * FROM users')
print(cursor.fetchall())
# 关闭连接
conn.close()
5. 管理与工具
- 可用命令行工具
sqlite3直接操作数据库文件。 - 支持多种可视化管理工具,如 DB Browser for SQLite、SQLiteStudio。
6. 优势与局限
优势:
- 轻量、易用、无需运维
- 适合单机和嵌入式场景
- 支持标准 SQL
局限:
- 不适合高并发、大数据量场景
- 网络分布式访问能力有限
总结:
SQLite 是一个高效、易用的文件型数据库,适合本地存储和轻量级应用场景。只需一个数据库文件,即可实现完整的数据管理功能。