#bb8 #pool #sqlite #bb8-connection #connection-pool #connection-manager

bin+lib bb8-libsql

使用bb8的libsql简单连接池管理器

3个版本

0.1.2 2024年8月22日
0.1.1 2024年8月16日
0.1.0 2024年8月15日

#2102数据库接口

Download history 245/week @ 2024-08-15

每月245次下载

MIT 协议

16KB
146

bb8-libsql

使用bb8的libsql简单连接池管理器。


lib.rs:

Sqlite对bb8连接池的支持。

库Crates: bb8-libsql

集成: bb8libsql

示例

use std::{env, error::Error};
use r2d2_libsql::LibsqlConnectionManager;
 
use dotenvy::dotenv;
 
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
    dotenv().ok();
 
    let url = env::var("LIBSQL_CLIENT_URL").unwrap();
    let token = env::var("LIBSQL_CLIENT_TOKEN").unwrap();
 
    let manager = LibsqlConnectionManager::remote(&url, &token);
    let pool = bb8::Pool::builder()
        .max_size(15)
        .build(manager)
        .await
        .unwrap();
 
    let conn = pool.get().await?;
    let mut rows = conn.query("SELECT 1;", ()).await?;
 
    let value_found = rows.next().await?
        .map(|row| row.get::<u64>(0))
        .transpose()?;
 
    dbg!(value_found);
 
    Ok(())
}

依赖关系

~4–11MB
~102K SLoC