sql_middleware/sqlite/
executor.rs1use crate::adapters::params::convert_params;
2use crate::middleware::{
3 ConversionMode, ResultSet, RowValues, SqlMiddlewareDbError, StatementCacheMode,
4};
5
6use super::connection::SqliteConnection;
7use super::params::Params;
8use super::query::build_result_set;
9
10pub async fn execute_batch(
16 sqlite_client: &mut SqliteConnection,
17 query: &str,
18) -> Result<(), SqlMiddlewareDbError> {
19 sqlite_client.execute_batch(query).await
20}
21
22pub async fn execute_select(
28 sqlite_client: &mut SqliteConnection,
29 query: &str,
30 params: &[RowValues],
31 statement_cache_mode: StatementCacheMode,
32) -> Result<ResultSet, SqlMiddlewareDbError> {
33 let params_owned = convert_params::<Params>(params, ConversionMode::Query)?.0;
34 sqlite_client
35 .execute_select(query, ¶ms_owned, build_result_set, statement_cache_mode)
36 .await
37}
38
39pub async fn execute_dml(
45 sqlite_client: &mut SqliteConnection,
46 query: &str,
47 params: &[RowValues],
48 statement_cache_mode: StatementCacheMode,
49) -> Result<usize, SqlMiddlewareDbError> {
50 let params_owned = convert_params::<Params>(params, ConversionMode::Execute)?.0;
51 sqlite_client
52 .execute_dml(query, ¶ms_owned, statement_cache_mode)
53 .await
54}