9 个版本
0.1.8 | 2024年3月20日 |
---|---|
0.1.7 | 2024年1月16日 |
0.1.6 | 2023年11月1日 |
0.1.5 | 2023年10月19日 |
0.1.2 | 2023年6月11日 |
#2040 在 数据库接口
每月下载 136 次
用于 ssql
19KB
272 行
Deadpool & Tiberius 简单实现
该crate作为tiberius和deadpool的连接器和重新导出器,使创建 SQL 服务器连接池更加容易。
如果你在寻找 SQL 服务器 ORM,请查看 ssql。
完整文档请访问 doc.rs。
示例,从 tiberius 和连接池配置中链式配置
use deadpool_tiberius;
#[tokio::main]
async fn main() -> deadpool_tiberius::SqlServerResult<()> {
let pool = deadpool_tiberius::Manager::new()
.host("localhost") // default to localhost
.port(1433) // default to
.basic_authentication("username", "password")
// or .authentication(tiberius::AuthMethod)
.database("database1")
.trust_cert()
.max_size(10)
.wait_timeout(1.52) // in seconds, default to no timeout
.pre_recycle_sync(|_client, _metrics| {
// do sth with client object and pool metrics
Ok(())
})
.create_pool()?;
let mut conn = pool.get().await?;
let rows = conn.simple_query("SELECT 1");
// Or construct server connection config from ADO string.
const CONN_STR: &str = "Driver={SQL Server};Integrated Security=True;\
Server=DESKTOP-TTTTTTT;Database=master;\
Trusted_Connection=yes;encrypt=DANGER_PLAINTEXT;";
let _pool = deadpool_tiberius::Manager::from_ado_string(CONN_STR)
.max_size(20)
.create_pool()?;
}
依赖项
~8–20MB
~352K SLoC