![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
Query and explore DuckDB databases in VSCode.
Latest DuckDB Support: v1.0.0
A VSCode extension that extends SQLTools, with a driver for DuckDB.
This driver is maintained by Evidence: Publish BI reports with just SQL and Markdown.
Install
Install from the VSCode Marketplace.
Features
- Latest DuckDB support (currently 1.0.0)
- Connect to a local, in-memory or MotherDuck (via service token) DuckDB instance
- Run queries against a DuckDB instance
- Explore DB tables and columns in the sidebar
- View table results by selecting them in the sidebar
- Autocomplete for common keywords (e.g. SELECT, FROM, WHERE) and table names
- Read/Write connections
Connect Local and In-Memory DBs
![Connect Local DB](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/connect-local-db.gif?raw=true)
![Connect In-Memory DB](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/connect-in-memory-db.gif?raw=true)
Run Query
![Run Query](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/run-query.gif?raw=true)
Explore DB
![Explore DB](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/explore-db.gif?raw=true)
Autocomplete
![Autocomplete](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/autocomplete.gif?raw=true)
Read/Write Connections
DuckDB has two access modes:
- Read/Write: One process can both read and write to the database.
- Read Only: Multiple processes can read from the database, but no processes can write.
If you open another connection to a database that is already open in read/write mode, you may get an error. Close the read/write connection to resolve this.
More Info
Not Supported
DuckDB Extensions Supported
For clarity, the following DuckDB extensions are supported
Extension |
Supported |
arrow |
|
autocomplete |
|
fts |
|
httpfs |
|
icu |
1 |
inet |
|
jemalloc |
|
json |
1 |
motherduck |
1 |
parquet |
1 |
postgres_scanner |
|
spatial |
|
sqlite_scanner |
|
tpcds |
|
tpch |
|
MotherDuck
To use MotherDuck, you need your service token.
You should use the filename md:?motherduck_token=<your token>
when connecting to MotherDuck.
Contributing
- If you encounter bugs or have feature requests, feel free to open an issue.
- PRs welcome
Maintained by ![](https://github.com/evidence-dev/sqltools-duckdb-driver/blob/master/docs/images/evidence.png?raw=true)