17个版本
0.6.1 | 2024年5月29日 |
---|---|
0.6.0 | 2023年1月19日 |
0.5.4 | 2022年9月24日 |
0.4.2 | 2022年9月17日 |
0.1.0 | 2022年4月23日 |
#445 在 数据库接口
44KB
1K SLoC
Apache AGE (Rust驱动)
什么是Apache AGE
AGE是PostgreSQL的开源后端,允许用户在PostgreSQL上执行图相关操作。您可以在官方网站上了解更多信息。
这个仓库最终将合并到age仓库。PR所需工作的状态可以在AGE问题跟踪器中的特殊问题中找到。
重要提示
这个库只是现有PostgreSQL库的包装。连接参数、方法等。(除非有说明)与postgres和tokio-postgres Crates中的参数相同。
驱动程序使用
更多示例可以在文档中找到(下方的链接)
use apache_age::{NoTls, AgType};
use apache_age::sync::{AgeClient, Client};
use serde::{Deserialize, Serialize};
let mut client = Client::connect_age(
"host=localhost user=postgres password=passwd port=8081",
NoTls
).unwrap();
client.create_graph("my_apache_graph");
#[derive(Debug, Serialize, Deserialize, Clone)]
struct Person {
pub name: String,
pub surname: String,
}
match client.query_cypher::<()>(
"my_apache_graph",
"MATCH (n: Person) WHERE n.name = 'Alfred' RETURN {name: n.name, surname: n.surname}",
None,
) {
Ok(rows) => {
let x: AgType<Person> = rows[0].get(0);
// do whatever you need
}
Err(e) => {
// handle error
}
}
client.drop_graph("my_apache_graph");
链接
测试
测试目录中有一个简单的docker-compose文件。运行它以设置AGE数据库。
pushd tests
docker-compose up -d
popd
cargo t
依赖项
~7–17MB
~243K SLoC