# TransactorKt

Added in 3.0.2

*** ** * ** ***


```
public final class TransactorKt
```

<br />

*** ** * ** ***

## Summary

| ### Public methods |
|---|---|
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull R` | `<R extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/room3/TransactorKt#(androidx.room3.Transactor).deferredTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/Transactor receiver, @https://developer.android.com/reference/androidx/annotation/NonNull SuspendFunction1<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/TransactionScope<@https://developer.android.com/reference/androidx/annotation/NonNull R>, @https://developer.android.com/reference/androidx/annotation/NonNull R> block )` Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#DEFERRED` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).deferredTransaction(kotlin.coroutines.SuspendFunction1)`. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull R` | `<R extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/room3/TransactorKt#(androidx.room3.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/Transactor receiver, @https://developer.android.com/reference/androidx/annotation/NonNull SuspendFunction1<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/TransactionScope<@https://developer.android.com/reference/androidx/annotation/NonNull R>, @https://developer.android.com/reference/androidx/annotation/NonNull R> block )` Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#EXCLUSIVE` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)`. |
| `static final void` | `https://developer.android.com/reference/androidx/room3/TransactorKt#(androidx.room3.PooledConnection).executeSQL(kotlin.String)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/PooledConnection receiver, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html sql)` Executes a single SQL statement that returns no values. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull R` | `<R extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/room3/TransactorKt#(androidx.room3.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/Transactor receiver, @https://developer.android.com/reference/androidx/annotation/NonNull SuspendFunction1<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room3/TransactionScope<@https://developer.android.com/reference/androidx/annotation/NonNull R>, @https://developer.android.com/reference/androidx/annotation/NonNull R> block )` Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#IMMEDIATE` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)`. |

## Public methods

### deferredTransaction

Artifact: [androidx.room3:room3-runtime](https://developer.android.com/jetpack/androidx/releases/room3) [View Source](https://cs.android.com/search?q=file:androidx/room3/Transactor.kt+function:deferredTransaction)

```
public static final @NonNull R <R extends Object> deferredTransaction(
    @NonNull Transactor receiver,
    @NonNull SuspendFunction1<@NonNull TransactionScope<@NonNull R>, @NonNull R> block
)
```

Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#DEFERRED` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).deferredTransaction(kotlin.coroutines.SuspendFunction1)`.

### exclusiveTransaction

Artifact: [androidx.room3:room3-runtime](https://developer.android.com/jetpack/androidx/releases/room3) [View Source](https://cs.android.com/search?q=file:androidx/room3/Transactor.kt+function:exclusiveTransaction)

```
public static final @NonNull R <R extends Object> exclusiveTransaction(
    @NonNull Transactor receiver,
    @NonNull SuspendFunction1<@NonNull TransactionScope<@NonNull R>, @NonNull R> block
)
```

Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#EXCLUSIVE` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)`.

### executeSQL

Artifact: [androidx.room3:room3-runtime](https://developer.android.com/jetpack/androidx/releases/room3) [View Source](https://cs.android.com/search?q=file:androidx/room3/Transactor.kt+function:executeSQL) Added in [3.0.2](https://developer.android.com/jetpack/androidx/releases/room3#3.0.2)

```
public static final void executeSQL(@NonNull PooledConnection receiver, @NonNull String sql)
```

Executes a single SQL statement that returns no values.

### immediateTransaction

Artifact: [androidx.room3:room3-runtime](https://developer.android.com/jetpack/androidx/releases/room3) [View Source](https://cs.android.com/search?q=file:androidx/room3/Transactor.kt+function:immediateTransaction)

```
public static final @NonNull R <R extends Object> immediateTransaction(
    @NonNull Transactor receiver,
    @NonNull SuspendFunction1<@NonNull TransactionScope<@NonNull R>, @NonNull R> block
)
```

Performs a `https://developer.android.com/reference/androidx/room3/Transactor.SQLiteTransactionType#IMMEDIATE` within the `https://developer.android.com/reference/androidx/room3/package-summary#(androidx.room3.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)`.