SQLite 是一个进程内库,它实现了 自包含、无服务器、零配置、事务性 的 SQL 数据库引擎。SQLite 的代码处于 公共领域,因此可免费用于任何目的,包括商业用途和私人用途。SQLite 是世界上 部署最广泛 的数据库,其应用数量超过我们所能统计的范围,包括一些 备受瞩目的项目。
SQLite 是一个嵌入式 SQL 数据库引擎。与大多数其他 SQL 数据库不同,SQLite 没有单独的服务器进程。SQLite 直接读写普通磁盘文件。一个包含多个表、索引、触发器和视图的完整 SQL 数据库包含在一个磁盘文件中。数据库 文件格式 是跨平台的——您可以自由地在 32 位和 64 位系统之间或在 大端 和 小端 架构之间复制数据库。这些特性使 SQLite 成为了一个受欢迎的 应用程序文件格式 选择。SQLite 数据库文件是美国国会图书馆 推荐的存储格式。不要将 SQLite 视为 Oracle 的替代品,而是将其视为 fopen() 的替代品。
SQLite 是一个紧凑的库。启用所有功能后,库大小 可以小于 750KiB,具体取决于目标平台和编译器优化设置。(64 位代码更大。并且某些编译器优化(例如积极的函数内联和循环展开)会导致目标代码变得更大。)内存使用和速度之间存在权衡。通常,您为 SQLite 提供的内存越多,它的运行速度就越快。但是,即使在内存有限的环境中,性能通常也相当不错。根据使用方式的不同,SQLite 可以 比直接文件系统 I/O 更快。
在每次发布之前,SQLite 都会进行 非常仔细的测试,并且以其高度可靠性而闻名。大部分 SQLite 源代码纯粹用于测试和验证。自动测试套件运行数百万次测试用例,涉及数亿条单独的 SQL 语句,并实现了 100% 的分支测试覆盖率。SQLite 会优雅地响应内存分配失败和磁盘 I/O 错误。即使在系统崩溃或断电中断的情况下,事务也是 ACID 的。所有这些都通过使用模拟系统故障的特殊测试线束的自动化测试进行验证。当然,即使进行了所有这些测试,仍然存在错误。但与某些类似的项目(尤其是商业竞争对手)不同,SQLite 对所有错误都持开放和诚实的态度,并提供 错误列表 和代码更改的逐分钟 时间线。
SQLite 代码库由一个 国际开发团队 支持,该团队全职致力于 SQLite。开发人员继续扩展 SQLite 的功能并提高其可靠性和性能,同时保持与 发布的接口规范、SQL 语法 和数据库 文件格式 的向后兼容性。源代码对任何想要它的人都是绝对免费的,但也可以获得 专业支持。
SQLite 项目于 2000 年 5 月 9 日 启动。未来总是难以预测,但开发人员的意图是支持 SQLite 直到 2050 年。设计决策都是以此为目标做出的。
我们开发人员希望您发现 SQLite 有用,并恳请您善用它:制作快速、可靠、易用的优质产品。就像你宽恕他人一样宽恕自己。正如你免费获得 SQLite 一样,也请免费给予,将恩惠传递下去。
此页面最后修改于 2023 年 10 月 10 日 17:29:48 UTC