diff options
| -rw-r--r-- | src/lib.rs | 4 | ||||
| -rw-r--r-- | src/select.rs | 30 | 
2 files changed, 34 insertions, 0 deletions
| @@ -1,7 +1,11 @@ +pub mod select;  pub mod sqlite;  pub mod yaml; +pub use select::select; + +  #[derive(thiserror::Error, Debug)]  pub enum Error {      #[error("SQL error: {0}")] diff --git a/src/select.rs b/src/select.rs new file mode 100644 index 0000000..aa9389f --- /dev/null +++ b/src/select.rs @@ -0,0 +1,30 @@ +pub fn select( +    dbconn: &rusqlite::Connection, +    table_name: &str, +    record_id: &str, +) -> yaml_rust::Yaml { +    let mut stmt = dbconn.prepare(r#" +        SELECT +            x +        FROM :table +        WHERE :pk_column = :pk; +    "#).unwrap(); + +    let rows = stmt.query_map( +        &[ +            (":table", table_name), +            (":pk_column", "id"), +            (":pk", record_id), +        ], +        |row| { +            Ok(()) +        }, +    ).unwrap(); + +    // sqlite3 -header test.db ' +    // SELECT "name" +    // FROM pragma_table_info("test") +    // WHERE "pk" != 0;' + +    todo!(); +} | 
