pub async fn tx_insert<T>(
transaction: Transaction<'_>,
entity: T,
) -> Result<(Transaction<'_>, u64), Error>Expand description
Inserts a record within a transaction.
This function executes an INSERT SQL query within the given transaction. It returns the transaction object, allowing for method chaining.
§Arguments
transaction- An active transactionentity- Data object to be inserted (must implement SqlQuery and SqlParams traits)
§Return Value
Result<(Transaction<'_>, u64), Error>- On success, returns the transaction and the number of affected rows; on failure, returns Error
§Example
#[derive(Insertable, SqlParams)]
#[table("users")]
struct InsertUser {
name: String,
email: String,
}
let user = InsertUser {
name: "John".to_string(),
email: "john@example.com".to_string(),
};
let transaction = transactional::begin(&client).await?;
let (transaction, rows_affected) = transactional::tx_insert(transaction, user).await?;
transaction.commit().await?;