diff options
Diffstat (limited to 'rust/schist_queries/src/clear.rs')
| -rw-r--r-- | rust/schist_queries/src/clear.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/rust/schist_queries/src/clear.rs b/rust/schist_queries/src/clear.rs new file mode 100644 index 0000000..c823bcc --- /dev/null +++ b/rust/schist_queries/src/clear.rs @@ -0,0 +1,21 @@ +use anyhow::Result; +use diesel::SqliteConnection; + +use crate::{ + accounts::delete_all_accounts, + budget_updates::delete_all_budget_updates, + categories::delete_all_categories, + category_transfers::delete_all_category_transfers, + transactions::delete_all_transactions, + transaction_categorisations::delete_all_transaction_categorisations, +}; + +pub fn clear(connection: &mut SqliteConnection) -> Result<()> { + delete_all_accounts(connection)?; + delete_all_budget_updates(connection)?; + delete_all_categories(connection)?; + delete_all_category_transfers(connection)?; + delete_all_transactions(connection)?; + delete_all_transaction_categorisations(connection)?; + Ok(()) +} |
