Run multiple SQLite queries.
Executes multiple SQL statements sequentially against a SQLite database, optionally within a single transaction.
The database can be:
- reused from a previous task via
sqliteFile, - referenced directly through the JDBC URL,
- or created and persisted when
outputDbFileis enabled.
When outputDbFile is set to true, the database used during execution
is uploaded to Kestra internal storage and exposed as outputs.<taskId>.databaseUri,
enabling database reuse across tasks.
type: "io.kestra.plugin.jdbc.sqlite.queries"Execute multiple queries, using existing sqlite file, and pass the results to another task.
id: sqlite_query_using_file
namespace: company.team
tasks:
- id: update
type: io.kestra.plugin.jdbc.sqlite.Queries
url: jdbc:sqlite:myfile.db
sqliteFile: {{ outputs.get.outputFiles['myfile.sqlite'] }}
sql: |
SELECT * FROM my_table;
UPDATE my_table SET col = 'x';
fetchType: FETCH
SQL statement(s) to execute.
Runs one or more SQL statements depending on the task type. Query tasks support a single SQL statement, while Queries tasks can run multiple statements separated by semicolons.
SQL to execute atomically after trigger query.
Optional SQL executed in the same transaction as the main trigger query. Typically updates processing flags to prevent duplicate processing. Both sql and afterSQL queries commit together, ensuring consistency.
falseDEPRECATED, please use fetchType: FETCH instead.
Whether to fetch the data from the query result to the task output. This parameter is evaluated after fetchOne and store.
falseDEPRECATED, please use fetchType: FETCH_ONE instead.
Whether to fetch only one data row from the query result to the task output. This parameter is evaluated before store and fetch.
10000Number of rows that should be fetched.
Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed for this ResultSet object. If the fetch size specified is zero, the JDBC driver ignores the value and is free to make its own best guess as to what the fetch size should be. Ignored if autoCommit is false.
NONESTOREFETCHFETCH_ONENONEThe way you want to store data.
FETCH_ONE - output the first row. FETCH - output all rows as output variable. STORE - store all rows to a file. NONE - do nothing.
falseOutput the SQLite database file
When set to true, the SQLite database file used during execution
is uploaded to Kestra internal storage and exposed as outputs.<taskId>.databaseUri.
Parameters
A map of parameters to bind to the SQL queries. The keys should match the parameter placeholders in the SQL string, e.g., : parameterName.
The database user's password.
SQLite database file (optional)
Optional URI to an existing SQLite database file stored in Kestra internal storage.
When provided, the file is downloaded into the task working directory and used as the SQLite database for the query execution.
falseDEPRECATED, please use fetchType: STORE instead.
Whether to fetch data row(s) from the query result to a file in internal storage. File will be saved as Amazon Ion (text format).
See Amazon Ion documentation This parameter is evaluated after fetchOne but before fetch.
The time zone id to use for date/time manipulation. Default value is the worker's default time zone id.
trueTransaction
If one query failed, rollback transactions.
jdbc:sqlite:The JDBC URL to connect to the database.
Example: jdbc: sqlite: mydb.sqlite
The database user.
Map containing the first row of fetched data.
Only populated if fetchOne parameter is set to true.
List of map containing rows of fetched data.
Only populated if fetch parameter is set to true.
The number of rows fetched.
Only populated if store or fetch parameter is set to true.
uriThe URI of the result file on Kestra's internal storage (.ion file / Amazon Ion formatted text file).
Only populated if store is set to true.