Connessione a SQL Server in Rust con tiberius
In questo articolo vediamo come connetterci ad un db SQL Server in Rust.
Useremo tiberius, che è il driver più usato per SQL Server in Rust.
Aggiungete queste dipendenze al vostro Cargo.toml:
[dependencies]
tiberius = "0.12"
tokio = { version = "1.48.0", features = ["full"] }
tokio-util = { version = "0.7", features = ["compat"] }
Qui sotto un pò di codice:
use tiberius::{Client, Config, AuthMethod};
use tokio::net::TcpStream;
use tokio_util::compat::{TokioAsyncWriteCompatExt};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut config = Config::new();
config.host("localhost");
config.port(1433);
config.database("test");
config.authentication(AuthMethod::sql_server("sa", "Fermat85@"));
config.trust_cert();
let tcp = TcpStream::connect(config.get_addr()).await?;
tcp.set_nodelay(true)?;
let mut client = Client::connect(config, tcp.compat_write()).await?;
let query = "SELECT id, email FROM persone";
let stream = client.query(query, &[]).await?;
let rows = stream.into_first_result().await?;
for row in rows {
let id: i32 = row.get(0).unwrap();
let email: &str = row.get(1).unwrap();
println!("ID: {}, Email: {}", id, email);
}
Ok(())
}
Enjoy!
rust cargo sql server tiberius
Commentami!