pub async fn tx_fetch_all<T>(
transaction: Transaction<'_>,
params: T,
) -> Result<(Transaction<'_>, Vec<T>), Error>Expand description
Retrieves multiple records within a transaction.
§Arguments
transaction- An active transactionparams- Data object containing query parameters (must implement SqlQuery, FromRow, and SqlParams traits)
§Return Value
Result<(Transaction<'_>, Vec<T>), Error>- On success, returns the transaction and a vector of records
§Example
#[derive(Queryable, FromRow, SqlParams, Debug)]
#[table("users")]
#[where_clause("state = $")]
struct GetActiveUsers {
id: i64,
name: String,
email: String,
state: i16,
}
let query = GetActiveUsers {
id: 0,
name: Default::default(),
email: Default::default(),
state: 1, // active users
};
let transaction = transactional::begin(&client).await?;
let (transaction, users) = transactional::tx_fetch_all(transaction, query).await?;
transaction.commit().await?;