9个版本
0.0.10 | 2023年10月3日 |
---|---|
0.0.9 |
|
0.0.7 | 2023年8月23日 |
0.0.3 | 2023年7月30日 |
0.0.2 | 2023年5月17日 |
#1616 在 数据库接口
每月 109 次下载
150KB
3.5K SLoC
tarantool-rs
- 异步基于Tokio的Tarantool客户端(WIP)
tarantool-rs
- 异步基于Tokio的Tarantool客户端。
文档可在docs.rs上查看。
支持的Tarantool版本
支持的并经过测试的Tarantool版本
2.10.x
;2.11.x
.
其他(特别是较新的)也应该可以工作,但未经过测试。版本低于2.10.x
不支持事务,因此事务API将无法工作。
示例
如果你有一个clients
空间,其中包含2个“列”:id
和name
let conn = Connection::builder().build("127.0.0.1:3301").await?;
let space = conn.space("clients").await?.expect("clients space exists");
space.insert((1, "John Doe")).await?;
let clients = space.select::<(i64, String), _>(None, None, Some(IteratorType::All), ()).await?;
有关如何使用此crate的更多示例,请查看examples/
文件夹。
特性
- 授权
- Lua表达式评估
- 远程函数调用
- CRUD操作
- 事务控制(开始/提交/回滚)
- 后台自动重连
- SQL请求
- 分块响应
- 监视器和事件
- 连接池
- 自动获取和重新加载模式
- 优雅关闭协议支持
- 支持pre Tarantool 2.10版本
- 可自定义连接特性(流/监视器/mvcc)
- 自定义Tarantool MP类型(UUID等)
- ...
依赖项
~8–21MB
~232K SLoC