summaryrefslogtreecommitdiff
path: root/src/database/mod.rs
blob: 6d4853abbb0ba11dd90a6717fb4633babd505ca5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use tracing::instrument;

pub mod comments;
pub mod likes;
pub mod posts;
pub mod sessions;
pub mod users;

pub fn connect() -> Result<rusqlite::Connection, rusqlite::Error> {
    rusqlite::Connection::open("xssbook.db")
}

pub fn init() -> Result<(), rusqlite::Error> {
    users::init()?;
    posts::init()?;
    sessions::init()?;
    likes::init()?;
    comments::init()?;
    Ok(())
}

#[instrument()]
pub fn query(query: String) -> Result<usize, rusqlite::Error> {
    tracing::trace!("Running custom query");
    let conn = connect()?;
    conn.execute(&query, [])
}