9个版本

0.0.10 2023年10月3日
0.0.9 2023年9月23日
0.0.7 2023年8月23日
0.0.3 2023年7月30日
0.0.2 2023年5月17日

#1616数据库接口

Download history 57/week @ 2024-03-15 9/week @ 2024-03-22 10/week @ 2024-03-29 124/week @ 2024-04-05 12/week @ 2024-04-12 59/week @ 2024-04-19 14/week @ 2024-04-26 20/week @ 2024-05-31 57/week @ 2024-06-07 23/week @ 2024-06-21 19/week @ 2024-06-28

每月 109 次下载

MIT 协议

150KB
3.5K SLoC

tarantool-rs - 异步基于Tokio的Tarantool客户端(WIP)

Crates.io docs.rs CI

tarantool-rs - 异步基于Tokio的Tarantool客户端。

文档可在docs.rs上查看。

支持的Tarantool版本

支持的并经过测试的Tarantool版本

  • 2.10.x;
  • 2.11.x.

其他(特别是较新的)也应该可以工作,但未经过测试。版本低于2.10.x不支持事务,因此事务API将无法工作。

示例

如果你有一个clients空间,其中包含2个“列”:idname

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