1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use std::error::Error as StdError;
use std::str::FromStr;
use log::LevelFilter;
use sqlx::{sqlite::SqliteConnectOptions, ConnectOptions, SqlitePool};
pub struct Options {
pub path: String,
}
pub async fn connect(options: &Options) -> Result<SqlitePool, Box<dyn StdError>> {
let mut opts = SqliteConnectOptions::from_str(&options.path)?.create_if_missing(true);
opts.log_statements(LevelFilter::Off);
let result = SqlitePool::connect_with(opts).await?;
Ok(result)
}