WIP
This commit is contained in:
parent
dbea3cf20c
commit
4b09f77950
7 changed files with 88 additions and 44 deletions
|
@ -1,20 +1,20 @@
|
|||
use anyhow::Result;
|
||||
use rusqlite::OptionalExtension;
|
||||
|
||||
use super::Db;
|
||||
|
||||
impl Db {
|
||||
pub fn read_kvp(&self, key: &str) -> Result<String> {
|
||||
let mut stmt = self
|
||||
.connecion
|
||||
.prepare_cached("SELECT value FROM kv_store WHERE key = (?)")?;
|
||||
pub fn read_kvp(&self, key: &str) -> Result<Option<String>> {
|
||||
let lock = self.connection.lock();
|
||||
let mut stmt = lock.prepare_cached("SELECT value FROM kv_store WHERE key = (?)")?;
|
||||
|
||||
Ok(stmt.query_row([key], |row| row.get(0))?)
|
||||
Ok(stmt.query_row([key], |row| row.get(0)).optional()?)
|
||||
}
|
||||
|
||||
pub fn delete_kvp(&self, key: &str) -> Result<()> {
|
||||
let mut stmt = self
|
||||
.connecion
|
||||
.prepare_cached("SELECT value FROM kv_store WHERE key = (?)")?;
|
||||
let lock = self.connection.lock();
|
||||
|
||||
let mut stmt = lock.prepare_cached("SELECT value FROM kv_store WHERE key = (?)")?;
|
||||
|
||||
stmt.execute([key])?;
|
||||
|
||||
|
@ -22,9 +22,10 @@ impl Db {
|
|||
}
|
||||
|
||||
pub fn write_kvp(&self, key: &str, value: &str) -> Result<()> {
|
||||
let mut stmt = self
|
||||
.connecion
|
||||
.prepare_cached("INSERT OR REPLACE INTO kv_store(key, value) VALUES ((?), (?))")?;
|
||||
let lock = self.connection.lock();
|
||||
|
||||
let mut stmt =
|
||||
lock.prepare_cached("INSERT OR REPLACE INTO kv_store(key, value) VALUES ((?), (?))")?;
|
||||
|
||||
stmt.execute([key, value])?;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue