SQLite 文件数据库详解

137 阅读2分钟

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 是一个高效、易用的文件型数据库,适合本地存储和轻量级应用场景。只需一个数据库文件,即可实现完整的数据管理功能。