# Start Transaction

> `UiPath.Database.Activities.DatabaseTransaction`

`UiPath.Database.Activities.DatabaseTransaction`

## Description

Connects to a database and features a [Sequence](https://docs.uipath.com/activities/other/latest/user-guide/sequence) which can perform multiple transactions with the database.

It returns a `DatabaseConnection` variable, providing a scope for Database activities.

If **Use transaction** is set to **True**, the contained operations are executed in a single transaction, and applied at the end if none of the them failed.

If **Use Transaction** is set to **False**, all operations are committed individually.

When this activity ends, the connection to the database is closed.

## Project compatibility

**Windows - Legacy** | **Windows**

## Windows - Legacy, Windows configuration

### Designer panel

* **Configure Connection...** - Select an existing database connection or add a new one using the **Connection Wizard**.
* Add the activities you want to execute in the activity card.

### Properties panel

#### Common
* **Continue on error** - Specifies if the automation should continue even when the activity throws an error. This field only supports Boolean values (True, False). The default value is False. As a result, if the field is blank and an error is thrown, the execution of the project stops. If the value is set to True, the execution of the project continues regardless of any error.
  :::note
  If this activity is included in **Try Catch** and the value of the **Continue on error** property is True, no error is caught when the project is executed.
  :::
* **DisplayName** - The display name of the activity. This field supports only `String` variables.

#### Connection Configuration
* **Connection string** - The connection string used to establish a database connection. This field supports only `String` variables.
* **Existing connection** - The `DatabaseConnection` variable you want to use for connecting to a database. If such a connection is provided, the `ConnectionString` and `SecureConnectionString` properties are ignored. Can be retrieved from other Database activities that have the **Database connection** field in the **Output** property section. This field supports only `DatabaseConnection` variables.
* **Provider name** - The name of the database provider used to access the database. This field supports only `String` variables.
* **Secure connection string** - The connection string used to establish a database connection as Secure String. This field supports only `SecureString` variables.

#### Misc
* **Private** - If selected, the values of variables and arguments are no longer logged at Verbose level.
* **Use transaction** - Specifies if the database operations within this activity should be wrapped in a database transaction.

#### Output
* **Database connection** - The database connection variable returned by the activity. This can be subsequently used for other database operations. This field supports only `DatabaseConnection` variables.
