JDBC Sink Node
The JDBC Sink node cannot be added to a workflow in Fleak Data Workflow. A translator exists for it, but neither the node picker nor the data asset catalog offers it, under any setting. For the connectors that are generally available, see Data Assets.
This page is retained for reference only.
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
| Field | Description | Required | Default |
|---|---|---|---|
| Connection URL | The JDBC URL for your database. Includes the database type, host, port, and database name. | Yes | — |
| Use Credentials | Select or create a Username/Password credential for database authentication. Leave blank if your database does not require a password. | No | — |
| Table Name | The name of the table where records will be written. Column names in your records must match the table's column names. | Yes | — |
| Schema Name | The schema that contains the target table (e.g. public). Leave blank to use the database's default schema. | No | — |
| Write Mode | INSERT 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. | No | INSERT |
| Upsert Key Columns | Required 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 Size | Number of rows to write in a single transaction. All rows in a batch succeed or fail together. | No | 1000 |
Write Modes
INSERT
Every incoming record is added as a new row. Use this when you always want to append data, such as logging records.
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.
Related Nodes
- JDBC Source: Read records from a relational database
- Kafka Sink: Stream records to a Kafka topic