Install sqlx, basic select

This commit is contained in:
Joseph Ferano 2023-06-10 11:12:23 +07:00
parent 5d3e69d679
commit a8e3a44816
3 changed files with 1170 additions and 4 deletions

1157
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -14,4 +14,6 @@ serde_json = "1.0.89"
int-enum = "0.5.0"
thiserror = "1"
anyhow = "1"
sqlx = { version = "0.6", features = [ "runtime-async-std-native-tls", "sqlite" ] }
async-std = { version = "1", features = [ "attributes" ] }
clap = { version = "4.3.2" , features = [ "derive" ] }

View File

@ -5,6 +5,7 @@ use crossterm::{
terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen},
};
use kanban_tui::{Project, State};
use sqlx::sqlite::SqlitePool;
use std::{
error::Error,
fs::{File, OpenOptions},
@ -86,6 +87,20 @@ async fn main() -> anyhow::Result<(), Box<dyn Error>> {
}
};
let pool = SqlitePool::connect("sqlite:db.sqlite").await?;
let stuff = sqlx::query!(
r#"
select * from kanban
"#
)
.fetch_all(&pool)
.await?;
for item in stuff {
println!("{} - {} - {}", item.id, item.name, item.description);
}
let mut state = State::new(Project::load(filepath, &file)?);
enable_raw_mode()?;