8个版本 (重大更新)

0.7.0 2024年5月30日
0.6.0 2023年1月7日
0.5.0 2021年4月28日
0.4.1 2021年3月9日
0.1.0 2019年10月2日

#759数据库接口

Download history 58/week @ 2024-04-26 171/week @ 2024-05-03 149/week @ 2024-05-10 122/week @ 2024-05-17 242/week @ 2024-05-24 269/week @ 2024-05-31 241/week @ 2024-06-07 295/week @ 2024-06-14 173/week @ 2024-06-21 171/week @ 2024-06-28 179/week @ 2024-07-05 128/week @ 2024-07-12 65/week @ 2024-07-19 219/week @ 2024-07-26 208/week @ 2024-08-02 114/week @ 2024-08-09

每月648次下载
2 crate 中使用

MIT/Apache

13KB

r2d2-oracle

CI Crates.io Crates.io unsafe forbidden

文档可在 docs.rs 上找到。

为r2d2连接池提供的Oracle支持。该库位于r2d2连接管理器和oracle数据库驱动crate之间。

使用方法

有关如何使用连接池的详细信息,请参阅r2d2的文档。

use std::thread;
use r2d2_oracle::OracleConnectionManager;

fn main() {
    let manager = OracleConnectionManager::new("user", "password", "localhost");
    let pool = r2d2::Pool::builder()
         .max_size(15)
         .build(manager)
         .unwrap();
    
    for _ in 0..20 {
        let pool = pool.clone();
        thread::spawn(move || {
            let conn = pool.get().unwrap();
            // use the connection
            // it will be returned to the pool when it falls out of scope.
        });
    }
}

如果您想使用chrono数据类型,请启用chrono功能

[dependencies]
r2d2-oracle = { version = "0.2.0", features = ["chrono"] }

变更日志

有关变更日志,请参阅专门的CHANGELOG.md

crate的当前状态和v1.0.0路线图

这是crate的初始版本,尚未在生产环境中得到验证。尽管如此:crate非常小,因此预期不会出现很多问题。发布v1.0.0的前提是r2d2oracle都已发布它们的v1.0.0版本。

r2d2-oracle的替代方案

根据您的使用案例,您还可能想考虑以下替代方案

  • 从版本0.5.5开始,oracle提供了内置的连接池支持
  • 存在一个基于tokio的异步(tokio-based)版本的r2d2,以及r2d2-oracle的相应bb8-oracle分支

最低支持的Rust版本(MSRV)

该crate保证在稳定版Rust 1.60及以上版本上编译。它可能可以使用较旧版本编译,但任何新补丁版本都可能改变这一点。

依赖关系

~5–11MB
~124K SLoC