用途:本资料提供在 Node.js 中使用 SQLite 嵌入式数据库的实践指导,驱动为 better-sqlite3。SQLite 零配置、单文件、支持 ACID 事务,适合读多写少的场景,便于备份与分发;better-sqlite3 为同步驱动,速度优于异步方案。
主要能力:数据库初始化(文件、内存 :memory:、只读模式);通过 pragma 配置 WAL、synchronous、foreign_keys、temp_store 等;建表与索引;预编译语句执行 SELECT/INSERT/UPDATE/DELETE,支持命名参数与 RETURNING;事务(deferred/immediate/exclusive);联表、子查询、FTS5 全文检索、JSON 操作;TypeScript 类型安全查询与类封装;手动迁移;索引与查询优化、EXPLAIN QUERY PLAN、连接参数调优;备份与恢复(文件复制、VACUUM INTO、导出 SQL);错误处理与内存数据库测试。
使用方式:安装 npm install better-sqlite3,类型包 npm install --save-dev @types/better-sqlite3;可选安装 sqlite3 命令行工具(Ubuntu/Debian 用 sudo apt-get install sqlite3,macOS 用 brew install sqlite3)。随后用 new Database('mydb.sqlite') 打开数据库,执行 pragma 与 SQL,使用 db.prepare 创建语句并调用 get/all/run,用 db.transaction 包裹批量或原子操作。
适用场景:Node.js 应用内嵌数据库、测试环境、读密集型负载、需要单文件便携存储的项目。
限制:资料未提供具体性能基准、并发写入上限、版本兼容细节与收费信息;部分特性(RETURNING、JSON、FTS5、VACUUM INTO、部分索引)依赖相应 SQLite 版本,使用前需确认版本支持。