3个版本
0.1.2 | 2023年1月23日 |
---|---|
0.1.1 | 2023年1月23日 |
0.1.0 | 2023年1月23日 |
#2652 在 数据库接口
460KB
4.5K SLoC
OtterSQL实现了一个通用的中间代码(IC),它有一个用于表数据操作的指令集。这个IC可以用来制作MySQL和SQLite等大型数据库的内存模拟。这个IC由OtterSQL虚拟机执行。此项目还提供了一个前端,可以将通用的SQL方言编译为IC。
此项目的主要目标是帮助开发者测试他们的基于SQL的应用程序。长期目标是拥有一个可嵌入的SQL虚拟机,用于客户端应用程序。
非目标(目前):性能、并发、持久性、ACID合规性。
简介
请参阅 此博客文章 了解OtterSQL的介绍。
作为库使用
请参阅 包文档。
特性
当前已实现
-
CREATE TABLE
/CREATE SCHEMA
-
INSERT
值 - 投影(选择特定列)
- 过滤(
SELECT
的WHERE
子句)和复杂表达式 -
LIMIT
-
ORDER BY
正在进行或即将到来
-
UPDATE
:执行 - 联合和连接:执行
- 分组:执行
- 嵌套
SELECT
:代码生成和执行 - 公用表表达式(CTEs):代码生成和执行
- 保持表约束:代码生成和执行
未来
- MySQL方言和特性
- SQLite方言和特性
贡献
除非你明确声明,否则任何旨在包含在本作品中的贡献,如Apache-2.0许可证中定义的,都应按上述方式双授权,而不附加任何额外条款或条件。
吉祥物
认识OtterSQL的官方吉祥物。他生活在海洋中,喜欢阅读书籍。
依赖关系
~6MB
~125K SLoC