# TransactorKt

Added in 2.7.0

*** ** * ** ***


```
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/room/TransactorKt#(androidx.room.Transactor).deferredTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room/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/room/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/room/Transactor.SQLiteTransactionType#DEFERRED` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.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/room/TransactorKt#(androidx.room.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room/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/room/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/room/Transactor.SQLiteTransactionType#EXCLUSIVE` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)`. |
| `static final void` | `https://developer.android.com/reference/androidx/room/TransactorKt#(androidx.room.PooledConnection).execSQL(kotlin.String)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room/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/room/TransactorKt#(androidx.room.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/room/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/room/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/room/Transactor.SQLiteTransactionType#IMMEDIATE` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)`. |

## Public methods

### deferredTransaction

Artifact: [androidx.room:room-runtime](https://developer.android.com/jetpack/androidx/releases/room) [View Source](https://cs.android.com/search?q=file:androidx/room/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/room/Transactor.SQLiteTransactionType#DEFERRED` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.Transactor).deferredTransaction(kotlin.coroutines.SuspendFunction1)`.

### exclusiveTransaction

Artifact: [androidx.room:room-runtime](https://developer.android.com/jetpack/androidx/releases/room) [View Source](https://cs.android.com/search?q=file:androidx/room/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/room/Transactor.SQLiteTransactionType#EXCLUSIVE` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.Transactor).exclusiveTransaction(kotlin.coroutines.SuspendFunction1)`.

### execSQL

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

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

Executes a single SQL statement that returns no values.

### immediateTransaction

Artifact: [androidx.room:room-runtime](https://developer.android.com/jetpack/androidx/releases/room) [View Source](https://cs.android.com/search?q=file:androidx/room/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/room/Transactor.SQLiteTransactionType#IMMEDIATE` within the `https://developer.android.com/reference/androidx/room/package-summary#(androidx.room.Transactor).immediateTransaction(kotlin.coroutines.SuspendFunction1)`.