Upsert Records
Description
The Upsert Records activity inserts new records or updates existing records in a specified database table based on matching key columns. This allows workflows to maintain data consistency by handling both create and update operations in a single step.
Common Capabilities
Process Data Support
This activity supports dynamic configuration using variables from the Process Data drawer.
You can bind values from Model Data, Form Data, System Data, Enterprise Variables, and Activity Outputs.
Learn more → Using Process Data
Design-Time Configuration
The following properties define how the activity connects to the database and performs upsert operations.
Connection Type
Specifies the database engine (for example, SQL Server, Oracle, MySQL, PostgreSQL). Selecting the correct type ensures compatibility with the target database.
Connection Name
Select a preconfigured database connection that defines the server, credentials, and security settings.
Schema
Specifies the database schema that contains the target table.
Table Name
Specifies the name of the database table where records will be inserted or updated.
Key Columns
Specifies one or more columns that uniquely identify a record in the target table. These columns are used to determine whether a record already exists and should be updated, or whether a new record should be inserted.
Column Mapping
Defines how workflow values are mapped to database columns using the Schema Mapper.
All mapped columns are applied during both insert and update operations.
Timeout
Specifies the maximum time (in seconds) that the activity will wait for the upsert operation to complete. The default value is 600 seconds.
Outputs
Updated Records Count
Returns the number of existing records that were successfully updated.
Inserted Records Count
Returns the number of new records that were successfully inserted.
These outputs can be used for validation, reporting, or driving conditional workflow logic.
Wait All Incoming
Controls how this activity behaves when multiple incoming execution paths converge.
Determines whether the activity executes when:
- any incoming path completes, or
- all relevant paths have completed before execution
Learn more → Execution Control
On Error
Defines how the workflow behaves if this activity encounters a runtime error.
Supported strategies include Fault, Continue, Suspend, and Retry.