Skip to content

Database ​

Work with relational databases through a database link: SQL Server, PostgreSQL, Oracle, MySQL, MariaDB, Db2, Snowflake and ClickHouse. Row types are generated from the table or the query, so records arrive with typed fields.

NeedPlugin
Run any SQLSql query
Read a table or viewTable reader
Insert, update, upsert or delete rowsTable writer
Load many rows fastBulk insert
Call a procedure or functionRoutine call
Commit or roll back several steps togetherSql transaction
Read table and routine definitionsSchema reader

Credentials live in the database link, not in the flow.

Plugins ​

PluginWhat it doesPins
Bulk insertBuffers incoming records and writes them to a database table with the database's bulk load mechanism (minimally logged, much faster than row-by-row inserts). Use it for high-volume ingestion, for example after a file decoder or a mapper that produces many records.Input, Continue
Routine callCalls a stored procedure or function on a database and emits its result: the return value, output parameters, or the rows of a table-valued / pipelined result. Input and output types are generated from the routine signature. Works inside a Sql transaction scope.Input, Output, Continue
Schema readerReads the schema of database objects - tables, views, procedures and functions - and emits it as descriptors: columns with types, keys and foreign keys for tables and views, parameters for routines. Its main use is the branch of an AI tool, so the model can look up tables before it writes SQL; it also serves to document a database or drive generic flows.Input, Output
Sql queryRuns a parameterized SQL statement against a database link and emits the result rows as typed records (or as one dynamic result set). Parameter values are taken from the input record, the message metadata or the flow configuration. Works inside a Sql transaction scope. Use it for custom selects, joins and DML statements.Input, Output, NoData, Continue
Sql transactionRuns everything connected to its Output pin inside one database transaction. If all downstream components finish without error the transaction is committed and Continue is called; if any of them throws, the transaction is rolled back and the error is raised to the caller.Input, Output, Continue
Table readerSelects the rows of one database table (or view) and emits them as typed records, one record per row. The row type is generated from the table definition. A DbShapeRequest input adds projection, filtering, sorting and paging. Use it to read reference data or to serve table data to an API.Input, Output, NoData, Continue
Table writerInserts, updates, upserts or deletes one row in a database table for every input record. The record type is generated from the table definition. After an insert, database-generated values (identity, primary key, computed columns) are written back into the record. Works inside a Sql transaction scope.Input, Continue

Viaducta documentation