Skip to main content

JDBC Sink Node

Quick Reference

Connection URL The JDBC connection URL for your database. ex: jdbc:postgresql://localhost:5432/mydb

Use Credentials Database username and password credentials.

Table Name The name of the table to write records into. ex: events_processed

Schema Name The database schema containing the target table. Leave blank to use the default schema. ex: public

Write Mode How to handle incoming records: INSERT (always add a new row) or UPSERT (update if exists, insert if not). Default: INSERT.

Upsert Key Columns (UPSERT mode only) Comma-separated column names used to identify existing rows for update. ex: device_id or tenant_id,device_id

Batch Size Number of rows written per transaction. Default: 1000.

Overview

The JDBC Sink node writes records from your workflow into a relational database table. It supports inserting new rows or upserting (insert or update) based on a key you define. Records are written in batches for efficiency.

Supported databases include PostgreSQL, MySQL, MariaDB, Microsoft SQL Server, and Oracle.

Configuration

FieldDescriptionRequiredDefault
Connection URLThe JDBC URL for your database. Includes the database type, host, port, and database name.Yes
Use CredentialsSelect or create a Username/Password credential for database authentication. Leave blank if your database does not require a password.No
Table NameThe name of the table where records will be written. Column names in your records must match the table's column names.Yes
Schema NameThe schema that contains the target table (e.g. public). Leave blank to use the database's default schema.No
Write ModeINSERT adds every record as a new row. UPSERT updates an existing row if a match is found on the key columns, otherwise inserts a new row.NoINSERT
Upsert Key ColumnsRequired when Write Mode is UPSERT. Enter one or more column names separated by commas. These columns must have a unique constraint or be the primary key in your table.No
Batch SizeNumber of rows to write in a single transaction. All rows in a batch succeed or fail together.No1000

Write Modes

INSERT

Every incoming record is added as a new row. Use this when you always want to append data, such as logging events.

UPSERT

If a record matches an existing row based on the key columns, that row is updated. If no match is found, a new row is inserted. Use this to keep a table in sync with changing data, such as a device status table.

Set Upsert Key Columns to the column (or columns) that uniquely identify a row. For example, if your table has a device_id primary key, enter device_id.