use crate::adapters::params::convert_params;
use crate::middleware::{ConversionMode, ResultSet, RowValues, SqlMiddlewareDbError};
use super::connection::SqliteConnection;
use super::params::Params;
use super::query::build_result_set;
pub async fn execute_batch(
sqlite_client: &mut SqliteConnection,
query: &str,
) -> Result<(), SqlMiddlewareDbError> {
sqlite_client.execute_batch(query).await
}
pub async fn execute_select(
sqlite_client: &mut SqliteConnection,
query: &str,
params: &[RowValues],
) -> Result<ResultSet, SqlMiddlewareDbError> {
let params_owned = convert_params::<Params>(params, ConversionMode::Query)?.0;
sqlite_client
.execute_select(query, ¶ms_owned, build_result_set)
.await
}
pub async fn execute_dml(
sqlite_client: &mut SqliteConnection,
query: &str,
params: &[RowValues],
) -> Result<usize, SqlMiddlewareDbError> {
let params_owned = convert_params::<Params>(params, ConversionMode::Execute)?.0;
sqlite_client.execute_dml(query, ¶ms_owned).await
}