2 个版本
0.1.3 | 2023年7月25日 |
---|---|
0.1.2 | 2023年7月25日 |
#1404 in 数据库接口
62KB
1.5K SLoC
泰伯利乌斯 MSSQL 代理
MSSQL 代理。C# SQLDependencyEx 的重实现。
感谢 deadpool-tiberius 存储库。
示例
代理示例
let mssql = MssqlConnection::establish(&SqlConfig{
host: ".".to_string(),
instance: Some("SQLEXPRESS".to_string()),
port: 1433,
username: "sa".to_string(),
password: "julfikar123@".to_string(),
database: "AED_MOBILE".to_string(),
trust_cert: true,
allow_encrypt: true,
max_pool: 1,
sql_browser: false,
}).await;
match mssql {
Ok(conn) => {
let (sx, rx) = kanal::unbounded::<Vec<ListenEvent>>();
println!("started listening...");
tokio::spawn(async move {
while let Ok(evs) = rx.recv() {
println!("{} {:?}",evs.len(),evs);
}
});
let broker = conn.listen(1,format!("IV"), sx).await;
match broker {
Ok(_) => { }
Err(err) => {
println!("{:?}",err);
}
}
}
Err(err) => {
println!("{:?}",err);
}
}
查询示例
let config = SqlConfig {
host: ".".to_string(),
instance: Some("SQLEXPRESS".to_string()),
port: 1433,
username: "sa".to_string(),
password: "julfikar123@".to_string(),
database: "AED_MOBILE".to_string(),
trust_cert: true,
allow_encrypt: true,
max_pool: 1,
sql_browser: false,
};
let mssql = MssqlConnection::establish(&config).await;
let mut mssql = mssql.unwrap();
let res = mssql.select("SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE';", vec![]).await;
let res: Vec<HashMap<String,Value>> = res.unwrap();
依赖项
~21–32MB
~633K SLoC