7个版本 (4个破坏性更新)
新 0.5.0 | 2024年8月19日 |
---|---|
0.4.0 | 2024年7月23日 |
0.3.0 | 2024年6月17日 |
0.2.1 | 2024年6月13日 |
0.1.1 | 2024年2月19日 |
#826 在 数据库接口
每月204 次下载
9MB
178K SLoC
sqlite-tiny
欢迎来到 sqlite-tiny
🎉
这个包是一个最小化的SQLite库包,提供合并变体和微型Rust API。如果您只想嵌入SQLite库以及生成的C绑定,可以禁用 api
特性(默认启用)。
性能考虑
为了简化,这个包在以下假设下运行: malloc
是便宜的。为了保持代码的简洁和可读性,我们相当自由地分配内存和复制数据,以避免过于复杂的生命周期管理。
我们这样做的一些地方(非详尽)
- 绑定值:由于某些值在绑定之前需要临时中间表示形式,并且语句应该能够超出传递的参数的生命周期,因此我们指示SQLite将值复制到内部缓冲区
- 读取值:为了避免生命周期问题,我们总是在访问时立即将值从行/列复制出SQLite上下文到Rust管理的内存中
分布式SQLite版本
为了简化,这个包不链接到外部SQLite版本,而是仅在 dist
-文件夹 中构建和嵌入合并。更多信息请参阅 dist/README.md
。