Ir al contenido

Hoja de Referencia de Harlequin - IDE SQL de Terminal

Hoja de Referencia de Harlequin - IDE SQL de Terminal

Sección titulada «Hoja de Referencia de Harlequin - IDE SQL de Terminal»

Un IDE SQL completo que se ejecuta completamente en tu terminal. Incluye resaltado de sintaxis, autocompletado, una barra lateral de catálogo de datos, múltiples adaptadores de base de datos y exportación de resultados — no se necesita GUI.

MétodoComando
uv (Recomendado)uv tool install harlequin
pippip install harlequin
pipxpipx install harlequin
Homebrewbrew install harlequin
Poetrypoetry add harlequin

Instalación con Adaptadores de Base de Datos

Sección titulada «Instalación con Adaptadores de Base de Datos»
# DuckDB (built-in, no extra install needed)
uv tool install harlequin

# SQLite adapter
uv tool install 'harlequin[sqlite]'

# PostgreSQL adapter
uv tool install 'harlequin[postgres]'

# MySQL adapter
uv tool install 'harlequin[mysql]'

# Multiple adapters at once
uv tool install 'harlequin[postgres,mysql,sqlite,s3]'

Requiere: Python 3.9+

ComandoDescripción
harlequinAbrir con base de datos DuckDB en memoria
harlequin mydb.duckdbAbrir un archivo de base de datos DuckDB
harlequin -a sqlite mydb.dbAbrir una base de datos SQLite
harlequin -a sqliteAbrir base de datos SQLite en memoria
harlequin -a postgres -h localhost -p 5432 -U user -d mydbConectar a PostgreSQL
harlequin -a mysql -h localhost -u root mydbConectar a MySQL
harlequin --theme monokaiUsar un tema de color específico
harlequin --locale en_USEstablecer configuración regional de formato de números
harlequin --helpMostrar todas las opciones de CLI
TeclaDescripción
Ctrl+EnterEjecutar consulta actual
Ctrl+jEjecutar consulta actual (alternativo)
Ctrl+oAbrir un archivo SQL
Ctrl+sGuardar consulta actual a archivo
Ctrl+nNueva pestaña de consulta
Ctrl+wCerrar pestaña de consulta actual
Ctrl+kCambiar a siguiente pestaña de consulta
TabAceptar sugerencia de autocompletado
EscapeDescartar menú de autocompletado
F1Mostrar ayuda / documentación contextual
TeclaDescripción
Ctrl+rCambiar foco a panel de resultados
Ctrl+eCambiar foco a editor de consultas
Teclas de flechaNavegar tabla de resultados
Ctrl+cCopiar celda(s) seleccionada(s)
TeclaDescripción
Ctrl+qSalir de Harlequin
Ctrl+bAlternar barra lateral de catálogo de datos
F1Ayuda

DuckDB es el adaptador predeterminado y soporta características poderosas:

-- Read CSV files directly
SELECT * FROM read_csv_auto('data.csv');

-- Read Parquet files
SELECT * FROM read_parquet('data.parquet');

-- Read JSON files
SELECT * FROM read_json_auto('data.json');

-- Query remote files
SELECT * FROM read_csv_auto('https://example.com/data.csv');

-- Query S3 files (with s3 adapter)
SELECT * FROM read_parquet('s3://bucket/data.parquet');

-- Aggregate data from multiple files
SELECT * FROM read_csv_auto('logs/*.csv');

Crear un archivo de configuración para guardar perfiles de conexión usados frecuentemente:

# ~/.config/harlequin/config.toml
# (or use --config flag to specify path)

[profiles.local-pg]
adapter = "postgres"
host = "localhost"
port = 5432
user = "myuser"
database = "mydb"

[profiles.prod-readonly]
adapter = "postgres"
host = "prod-db.example.com"
port = 5432
user = "readonly"
database = "production"
theme = "monokai"

[profiles.duckdb-analytics]
adapter = "duckdb"
conn_str = ["analytics.duckdb"]

Usar perfiles con:

harlequin --profile local-pg
AdaptadorExtra de InstalaciónEjemplo de Conexión
DuckDB(integrado)harlequin data.duckdb
SQLitesqliteharlequin -a sqlite data.db
PostgreSQLpostgresharlequin -a postgres -h host -U user -d db
MySQLmysqlharlequin -a mysql -h host -u user db
S3 / GCSs3Parquet/CSV en almacenamiento en la nube
ODBCodbcConexiones ODBC genéricas
TrinotrinoClústeres Trino/Presto
BigQuerybigqueryGoogle BigQuery
CassandracassandraApache Cassandra
ClickHouseclickhouseBases de datos ClickHouse
MotherDuck(vía DuckDB)DuckDB en la nube
# Quick data exploration — open CSV as a database
harlequin
# Then in query editor: SELECT * FROM read_csv_auto('data.csv') LIMIT 100;

# Explore a SQLite database (e.g., a mobile app DB)
harlequin -a sqlite app.db

# Connect to local Postgres for development
harlequin -a postgres -h localhost -p 5432 -U dev -d myapp_dev

# Analyze Parquet files without loading into a database
harlequin
# Then: SELECT * FROM read_parquet('output/*.parquet');
# Install django-harlequin
pip install django-harlequin

# Launch Harlequin connected to your Django DB
./manage.py harlequin
ProblemaSolución
Adaptador no encontradoInstalar con extras: uv tool install 'harlequin[postgres]'
Conexión rechazadaVerificar host, puerto y que el servidor de base de datos esté ejecutándose
Problemas de visualizaciónProbar un terminal diferente (Kitty, WezTerm, iTerm2 recomendados)
Lento en tablas grandesUsar LIMIT en consultas; evitar SELECT * en tablas enormes
Falta autocompletadoAsegurar que estás conectado a una base de datos con esquema
CaracterísticaHarlequinDBeaverpgcliusql
Se ejecuta en terminalNo (GUI)
Multi-base de datosSolo Postgres
AutocompletadoNo
Tabla de resultados visualBásicoBásico
Consultas de archivos (CSV, Parquet)Sí (DuckDB)LimitadoNoNo
Perfiles de configuraciónNo