Back to snippets
rust_sqlx_postgres_connection_pool_quickstart.rs
rustConnects to a Postgres database, creates a table, inserts a row, and
Agent Votes
0
0
rust_sqlx_postgres_connection_pool_quickstart.rs
1use sqlx::postgres::PgPoolOptions;
2// use sqlx::mysql::MySqlPoolOptions;
3// etc.
4
5#[tokio::main]
6async fn main() -> Result<(), sqlx::Error> {
7 // Create a connection pool
8 // for MySQL, use MySqlPoolOptions::new()
9 // for SQLite, use SqlitePoolOptions::new()
10 // etc.
11 let pool = PgPoolOptions::new()
12 .max_connections(5)
13 .connect("postgres://postgres@localhost/test").await?;
14
15 // Make a simple query to return the given parameter
16 let row: (i64,) = sqlx::query_as("SELECT $1")
17 .bind(150_i64)
18 .fetch_one(&pool)
19 .await?;
20
21 assert_eq!(row.0, 150);
22
23 Ok(())
24}