.duckdb file to open a database, or a .parquet, .csv, .tsv, .json or .ndjson file to read it where it sits. DuckDB 1.5.2 is compiled into the driver, so nothing runs as a server unless you point the connection at one.
The driver is not in the app. Picking in the Choose a Database sheet offers the
download before the form opens, and opening a saved connection installs it without asking.
Settings > Plugins > Browse > installs it up front. See Plugins.
Quick setup
1
Create the connection
Click Create Connection… or press
Cmd+N, then choose DuckDB.2
Choose a file
Leave Connection Type on Local File and click Browse…. Type
:memory: in the field instead for a database that lasts as long as the session.3
Connect
Click Save & Connect.

DuckDB connection form
What the file field accepts
In Local File mode the path is the whole connection, and it is required; the form shows no host, port or Database field. Double-click a
.duckdb or .ddb file in Finder to open it in TablePro; the data formats are not registered with Finder.
Remote (Quack)
Quack is DuckDB’s client-server protocol, served byquack_serve. Set Connection Type to Remote (Quack, experimental):
Save & Connect attaches the remote to an in-memory DuckDB. Reach it through the alias:
SELECT * FROM remotedb.main.orders.
The
quack extension is not linked into the macOS build. DuckDB downloads it from extensions.duckdb.org on the first remote connect and caches it under ~/.duckdb, so that one connect needs to reach that host.Connection URL
Databases and schemas
A connection opens one database named after the file:analytics.duckdb becomes analytics, schema main. ATTACH a second file and it joins the sidebar as a sibling database after a refresh:
Cmd+K to move between them, in place, with no reconnect. DuckDB does not persist attachments, so a reconnect starts again from the one file. system and temp are hidden, and with them information_schema and pg_catalog.
Any connection can also read a file straight from SQL:
Limitations
- A DuckDB file takes one writer at a time. A connect against a file another process holds fails, naming that process. Quit the
duckdbCLI, the Python process or the other TablePro window first. - A data file opened through Browse… is read-only, and the file on disk is left byte for byte identical. To change its contents, open a
.duckdbdatabase and runCREATE TABLE t AS SELECT * FROM 'data.parquet'. - Remote (Quack) lists no tables in the sidebar. Write them out by name through the alias.
- No SSL/TLS pane and no SSH tunnel. The engine is in-process; see SSL/TLS.
- No creating or dropping a database.
ATTACHis the way to reach a second file.
Troubleshooting
No file at …
A data-file path that is not there. Only.duckdb and .ddb are created on demand. Re-pick the file with Browse….
DuckDB opened the file but reported no catalog to browse
The file opened and exposed nothing to list. Check that it is a DuckDB database and not a file with a borrowed extension.Port must be a number between 1 and 65535
Port holds something else. The Quack default is9494.
Related
- TablePro for iPhone and iPad, where DuckDB opens a file picked through the Files app
- Import & Export


