Skip to main content
Beta The tc duckdb commands manage DuckDB databases in the active TinyCloud space. Use them for analytical workloads that fit DuckDB’s columnar query model. The command family currently supports query, execute, schema describe, export, and import workflows.

Commands

tc duckdb query

Run a read-only query.
tc duckdb query <sql>
OptionDescriptionDefault
--db <name>DuckDB database namedefault
--params <json>JSON array of bind parameters for ? placeholdersNone
tc duckdb query "SELECT type, count(*) AS total FROM events GROUP BY type" --db analytics

tc duckdb execute

Run a write or schema statement.
tc duckdb execute <sql>
OptionDescriptionDefault
--db <name>DuckDB database namedefault
--params <json>JSON array of bind parameters for ? placeholdersNone
tc duckdb execute "CREATE TABLE IF NOT EXISTS events (type VARCHAR, created_at TIMESTAMP)" --db analytics

tc duckdb describe

Show tables, columns, and views.
tc duckdb describe --db analytics

tc duckdb export

Download the raw DuckDB database file.
tc duckdb export --db analytics --output analytics.duckdb
OptionDescriptionDefault
--db <name>DuckDB database namedefault
-o, --output <file>Output file pathexport.duckdb

tc duckdb import

Upload a local DuckDB database file.
tc duckdb import analytics.duckdb --db analytics
OptionDescriptionDefault
--db <name>DuckDB database namedefault

Scripting

Use --json for machine-readable output when querying or describing databases.
tc duckdb query "SELECT count(*) AS total FROM events" --db analytics --json | jq '.rows[0][0]'
DuckDB support is beta. Prefer SQLite via tc sql for operational app data unless you specifically need DuckDB query behavior.