5 个不稳定版本

0.3.1 2024年2月20日
0.3.0 2024年1月31日
0.2.0 2024年1月29日
0.1.1 2023年12月15日
0.1.0 2023年12月15日

#1609数据库接口

Download history • Rust 包仓库 15/week @ 2024-03-13 • Rust 包仓库 2/week @ 2024-03-20 • Rust 包仓库 29/week @ 2024-03-27 • Rust 包仓库 33/week @ 2024-04-03 • Rust 包仓库 13/week @ 2024-04-17 • Rust 包仓库 49/week @ 2024-04-24 • Rust 包仓库 18/week @ 2024-05-01 • Rust 包仓库 33/week @ 2024-05-08 • Rust 包仓库 8/week @ 2024-05-15 • Rust 包仓库 11/week @ 2024-05-22 • Rust 包仓库 32/week @ 2024-05-29 • Rust 包仓库 40/week @ 2024-06-05 • Rust 包仓库 4/week @ 2024-06-12 • Rust 包仓库 6/week @ 2024-06-19 • Rust 包仓库 13/week @ 2024-06-26 • Rust 包仓库

67 每月下载量

MIT 许可证

180KB
3K SLoC

bb8-aykroyd

文档

aykroydbb8 连接池的支持库。

示例

use bb8_aykroyd::AykroydConnectionManager;
use tokio_postgres::tls::NoTls;

#[derive(aykroyd::QueryOne)]
#[query(row(Row), text = "SELECT 1 + $1")]
struct AddOneTo(i32);

#[derive(aykroyd::FromRow)]
struct Row(i32);

#[tokio::main]
async fn main() {
    let manager = AykroydConnectionManager::new(
        "host=localhost user=postgres".parse().unwrap(),
        NoTls,
    );
    let pool = bb8::Pool::builder()
        .max_size(15)
        .build(manager)
        .await
        .unwrap();

    for i in 0..20 {
        let pool = pool.clone();
        tokio::spawn(async move {
            let client = pool.get().await.unwrap();

            let row = client.query_one(&AddOneTo(i)).await.unwrap();
            let value = row.0;
            assert_eq!(value, i + 1);
        });
    }
}

依赖项

~3–13MB
~146K SLoC