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 在 数据库接口
每月648次下载
在 2 crate 中使用
13KB
r2d2-oracle
文档可在 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的前提是r2d2
和oracle
都已发布它们的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