MCPcopy Index your code
hub / github.com/columnar-tech/databow

github.com/columnar-tech/databow @v0.1.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.1.1 ↗ · + Follow
103 symbols 195 edges 9 files 1 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

databow

databow GitHub Release GitHub Actions Workflow Status GitHub License

A command-line tool for querying databases via ADBC.

Highlights

  • Multi-database support - Connect to any database with a compatible ADBC driver
  • Interactive SQL shell - Execute SQL queries with command history and intuitive navigation
  • Syntax highlighting - SQL queries highlighted for improved readability
  • Formatted output - Results displayed in clean, aligned tables with dynamic column width
  • File export - Export query results to JSON, CSV, or Arrow IPC files
  • Fast and lightweight - Built in Rust for high performance and minimal resource usage

Installation

Install with uv:

uv tool install databow

Install with Cargo:

cargo install databow

Getting Started

Install the DuckDB ADBC driver with dbc:

dbc install duckdb

Interactive Usage

Connect to DuckDB (in-memory):

databow --driver duckdb

Execute SQL queries:

> CREATE TABLE penguins AS FROM 'https://blobs.duckdb.org/data/penguins.csv';
┌───────┐
│ Count │
├───────┤
│ 344   │
└───────┘
> SELECT *
. FROM penguins
. LIMIT 5;
┌─────────┬───────────┬────────────────┬───────────────┬───────────────────┬─────────────┬────────┬──────┐
│ species │ island    │ bill_length_mm │ bill_depth_mm │ flipper_length_mm │ body_mass_g │ sex    │ year │
├─────────┼───────────┼────────────────┼───────────────┼───────────────────┼─────────────┼────────┼──────┤
│ Adelie  │ Torgersen │ 39.1           │ 18.7          │ 181               │ 3750        │ male   │ 2007 │
│ Adelie  │ Torgersen │ 39.5           │ 17.4          │ 186               │ 3800        │ female │ 2007 │
│ Adelie  │ Torgersen │ 40.3           │ 18            │ 195               │ 3250        │ female │ 2007 │
│ Adelie  │ Torgersen │ NA             │ NA            │ NA                │ NA          │ NA     │ 2007 │
│ Adelie  │ Torgersen │ 36.7           │ 19.3          │ 193               │ 3450        │ female │ 2007 │
└─────────┴───────────┴────────────────┴───────────────┴───────────────────┴─────────────┴────────┴──────┘

Non-interactive Usage

Execute a query directly and exit:

databow --driver duckdb --query "SELECT 42 AS the_answer"

Execute a query from stdin and exit:

echo "SELECT 42 AS the_answer" | databow --driver duckdb

Execute a query from a file and exit:

databow --driver duckdb --file select_example.sql

Execute a query and output the result to a file:

databow --driver duckdb --query "SELECT 42 AS the_answer" --output result.json
databow --driver duckdb --query "SELECT 42 AS the_answer" --output result.csv
databow --driver duckdb --query "SELECT 42 AS the_answer" --output result.arrow

Reference

$ databow --help
Query databases via ADBC

Usage: databow [OPTIONS]

Options:
      --profile <profile>    Connection profile name or path
      --driver <driver>      Driver name (required if --profile not specified)
      --uri <uri>            Database uniform resource identifier
      --username <username>  Database user username
      --password <password>  Database user password
      --option <option>      Driver-specific database option
      --mode <mode>          Table display style [default: utf8-compact]
      --query <query>        Execute query and exit
      --file <file>          Read and execute file and exit
      --output <file>        Write result to file
  -h, --help                 Print help
  -V, --version              Print version

License

This project is licensed under Apache-2.0.

Core symbols most depended-on inside this repo

write_batches_to_file
called by 8
src/output.rs
create_table
called by 6
src/table.rs
parse_option
called by 6
src/cli.rs
build_database_options
called by 6
src/database.rs
create_test_batch
called by 5
src/output.rs
merge_options
called by 5
src/database.rs
create_test_batch
called by 4
src/table.rs
print_batches
called by 3
src/table.rs

Shape

Function 82
Method 13
Class 4
Enum 4

Languages

Rust100%

Modules by API surface

src/output.rs21 symbols
src/table.rs18 symbols
src/cli.rs17 symbols
tests/integration_test.rs15 symbols
src/database.rs14 symbols
src/repl.rs9 symbols
src/highlighter.rs6 symbols
src/main.rs2 symbols
build.rs1 symbols

Datastores touched

postgresDatabase · 1 repos
yellowbrickDatabase · 1 repos
yugabyteDatabase · 1 repos

For agents

$ claude mcp add databow \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page