add sqlite
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
|||||||
/target
|
/target
|
||||||
Cargo.lock
|
Cargo.lock
|
||||||
*.log
|
*.log
|
||||||
|
test.db*
|
||||||
27
src/main.rs
27
src/main.rs
@@ -3,6 +3,7 @@ use log::info;
|
|||||||
use sqlx::{
|
use sqlx::{
|
||||||
mysql::MySqlPoolOptions,
|
mysql::MySqlPoolOptions,
|
||||||
postgres::PgPoolOptions,
|
postgres::PgPoolOptions,
|
||||||
|
sqlite::SqlitePoolOptions,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn setup_logger() -> Result<(), fern::InitError> {
|
fn setup_logger() -> Result<(), fern::InitError> {
|
||||||
@@ -72,13 +73,32 @@ async fn check_mysql() -> Result<(), sqlx::Error> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async fn check_postgres() -> Result<(), sqlx::Error> {
|
async fn check_postgres() -> Result<(), sqlx::Error> {
|
||||||
|
let pool = PgPoolOptions::new()
|
||||||
|
.max_connections(5)
|
||||||
|
.connect("postgres://demo_user:demo_pass@localhost:8087/demo")
|
||||||
|
.await?;
|
||||||
|
|
||||||
|
// Make a simple query to return the given parameter
|
||||||
|
let row: (i64,) = sqlx::query_as("SELECT $1")
|
||||||
|
.bind(150_i64)
|
||||||
|
.fetch_one(&pool)
|
||||||
|
.await?;
|
||||||
|
|
||||||
|
assert_eq!(row.0, 150);
|
||||||
|
|
||||||
|
info!("Received {}", row.0);
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
async fn check_sqlite() -> Result<(), sqlx::Error> {
|
||||||
// Create a connection pool
|
// Create a connection pool
|
||||||
// for MySQL, use MySqlPoolOptions::new()
|
// for MySQL, use MySqlPoolOptions::new()
|
||||||
// for SQLite, use SqlitePoolOptions::new()
|
// for SQLite, use SqlitePoolOptions::new()
|
||||||
// etc.
|
// etc.
|
||||||
let pool = PgPoolOptions::new()
|
let pool = SqlitePoolOptions::new()
|
||||||
.max_connections(5)
|
.max_connections(5)
|
||||||
.connect("postgres://demo_user:demo_pass@localhost:8087/demo")
|
.connect("sqlite://test.db")
|
||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
// Make a simple query to return the given parameter
|
// Make a simple query to return the given parameter
|
||||||
@@ -112,6 +132,9 @@ async fn main() -> Result<(), sqlx::Error> {
|
|||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
check_maria_db().await.unwrap();
|
check_maria_db().await.unwrap();
|
||||||
}),
|
}),
|
||||||
|
tokio::spawn(async move {
|
||||||
|
check_sqlite().await.unwrap();
|
||||||
|
}),
|
||||||
];
|
];
|
||||||
|
|
||||||
info!("---- Spawned all ----");
|
info!("---- Spawned all ----");
|
||||||
|
|||||||
Reference in New Issue
Block a user