5个版本 (重大更改)
使用旧Rust 2015
0.5.0 | 2019年12月18日 |
---|---|
0.4.0 | 2019年11月12日 |
0.3.0 | 2019年10月29日 |
0.2.0 | 2019年1月22日 |
0.1.0 | 2018年2月21日 |
#20 in #odbc
每月下载量 90次
在 unidb_odbc 中使用
9KB
107 代码行
r2d2-odbc
示例
extern crate r2d2;
extern crate r2d2_odbc;
extern crate odbc;
use std::thread;
use r2d2_odbc::ODBCConnectionManager;
use odbc::*;
fn main() {
let manager = ODBCConnectionManager::new("DSN=PostgreSQL");
let pool = r2d2::Pool::new(manager).unwrap();
let mut children = vec![];
for i in 0..10i32 {
let pool = pool.clone();
children.push(thread::spawn(move || {
let pool_conn = pool.get().unwrap();
let conn = pool_conn.raw();
let stmt = Statement::with_parent(&conn).unwrap();
if let Data(mut stmt) = stmt.exec_direct("SELECT version()").unwrap() {
while let Some(mut cursor) = stmt.fetch().unwrap() {
if let Some(val) = cursor.get_data::<&str>(1).unwrap() {
println!("THREAD {} {}", i, val);
}
}
}
}));
}
for child in children {
let _ = child.join();
}
}
依赖关系
~3.5–9.5MB
~137K SLoC