SQLite
SQLite是一款开源的轻量级嵌入式关系型数据库管理系统,以C语言编写,无需独立服务器进程即可运行。其核心特征包括:数据库以单一文件形式存储、零配置部署、支持标准SQL语法,适合嵌入至应用程序内部使用。广泛应用于移动端、桌面软件、浏览器及物联网等对资源占用要求较低的场景。
核心事实
时间轴 (近 90 天)
Hermes 使用 SQLite 的 FTS5 扩展对历史对话和记忆条目建立全文索引,数据全部存储在本地,无需上传服务器。
PRAGMA max_page_count 设置 SQLite 最大页数,超过限制时写入返回 SQLITE_FULL,但仅作用于单个数据库文件,可通过多个数据库或 WAL 文件绕过
磁盘写满时 SQLite 返回 SQLITE_FULL 错误,会导致永久性的崩溃循环,且无法通过应用自己的 API 恢复
只有执行 VACUUM 并配合 PRAGMA wal_checkpoint(TRUNCATE) 才能真正释放 SQLite 磁盘空间(实验中回收了 37.9 MB)
SQLite 的 DELETE 操作不会缩小数据库文件,freelist_count 上升但 page_count 不变,回收 0 字节
SQLite使用||进行字符串连接,而MySQL使用CONCAT()函数。
SQLite不支持GRANT和REVOKE语句,因为在SQLite中没有用户概念;执行GRANT会报语法错误。
SQLite是Python标准库自带的嵌入式数据库,无需安装、无需启动服务器。
SQLite的:memory:创建一个纯内存数据库,连接关闭后数据库即被删除,且每次重新连接都会得到全新的空库。
SQLite中,SQL关键字和表名不区分大小写,但引号内的文本值区分大小写。
还有 40 条时间轴事件
全部知识事实 (20)
LangGraph的检查点存储默认支持内存、SQLite和PostgreSQL等多种后端
90%已验证SQLite是世界上部署最广泛的数据库引擎,以单文件形式存储整个数据库,无需独立的服务器进程
80%已验证Datasette是一个将SQLite数据库即时转化为可交互API和Web界面的开源工具
80%已验证Datasette 是 Simon Willison 于2017年创建的开源数据探索工具,专为 SQLite 数据库设计
80%已验证SQLite是嵌入式关系型数据库,无需独立服务进程,数据存储在单个文件中,Python标准库内置sqlite3模块直接支持
80%已验证SQLite 在2023年以超过一万亿个活跃部署位居全球数据库数量榜首,超过 MySQL 和 PostgreSQL 的总和
70%已验证SQLite的测试套件包含超过九千万个测试用例,测试代码行数是源代码本身的数百倍,代码覆盖率接近100%
70%已验证LangGraph的状态是一个TypedDict,检查点机制将状态快照持久化到存储后端(如SQLite、PostgreSQL),支持断点恢复、时间旅行调试和人机协作
65%已验证LangGraph 通过检查点机制将每个节点执行后的完整状态序列化并持久化到外部存储(如 PostgreSQL 或 Redis),可在中断点精确恢复执行
65%已验证DuckDB由荷兰CWI数据库研究中心开发,定位为OLAP领域的SQLite,专注列式存储和向量化执行引擎
65%已验证sqlite-utils 是 Simon Willison 于2019年创建的开源库,专为简化 SQLite 数据库操作而设计,提供 Python API 和命令行界面两种使用方式
65%已验证SQLite内存数据库(:memory:模式)的生命周期与进程绑定,测试结束后数据自动销毁
65%已验证Python 标准库内置了 sqlite3 模块
65%已验证LLM 是 Simon Willison 维护了三年多的 Python 命令行工具和库,提供统一接口访问 OpenAI、Anthropic、Google 等主流大语言模型
65%已验证Django的ORM支持多种数据库后端,包括PostgreSQL、MySQL和SQLite
65%已验证安全研究人员发现 Recall 将截图以未加密的 SQLite 数据库形式存储在本地,引发隐私争议,微软随后将其改为需用户主动启用并增加 Windows Hello 验证、加密和敏感内容过滤
65%待验证Django默认使用SQLite作为开发数据库
95%待验证SQLite不接受未经事先协议或缺乏法律文书的Pull Request
95%待验证SQLite要求所有代码贡献必须置于公共领域(public domain),且贡献者需签署专门的法律文书
95%待验证Context Mode将MCP工具调用的原始返回数据存储在本地SQLite数据库中,上下文只保留精炼后的摘要
90%