Esta página describe Calíope 1.7, la versión que estoy construyendo ahora mismo. La 1.6 está en la App Store para Mac, iPad, iPhone, Apple Watch, Apple TV y Apple Vision Pro. El changelog dice en qué versión llegó cada función.

Añade un botón «Abrir en Calíope» a cada tema. Sólo funciona con la app instalada.

Importación de datos

Importar datos desde CSV, JSON o Excel

Carga datos desde un archivo CSV, JSON o Excel (.xlsx) directamente en una tabla usando el asistente de importación en tres pasos.

Dónde está: Árbol de esquema › clic derecho › Importar datos…

El asistente de Importación de datos inserta filas en una tabla a partir de un archivo, sin escribir SQL.

Cómo abrirlo: en el árbol de esquema, abre el menú contextual de una tabla y elige Importar datos…. La tabla queda como destino.

Paso 1 — El archivo
- Pulsa Elegir archivo y elige un .csv, .json o .xlsx.
- CSV — separado por comas, con las comillas de RFC 4180: un campo entre comillas puede llevar comas y saltos de línea. La primera fila son los nombres de las columnas.
- JSON — un array de objetos ([{"col": valor}, …]); las claves son los nombres de las columnas.
- Excel (.xlsx) — se lee la primera hoja, y su primera fila son los nombres de las columnas.

Paso 2 — Columnas: cada columna del archivo se asigna a una de la tabla, o se ignora (ver Mapear columnas en la importación). Si la primera fila de un CSV o de una hoja no son nombres, apaga Primera fila es encabezado: las columnas se numeran y esa fila entra con las demás.

Paso 3 — Importar
- Si el servidor admite más de una forma de tratar los duplicados, elige el modo (ver Modos de importación). Si sólo admite una, no hay nada que elegir y el selector no aparece.
- Elige el tamaño de lote: 100, 500 —el de fábrica— o 1000 filas por sentencia.
- Pulsa Importar. Una barra enseña el avance por lotes, y al terminar se ve cuántas filas entraron y los errores, si los hubo.

Disponible en macOS, iPad, iPhone y Apple Vision Pro.

Palabras clave: importar, csv, json, excel, xlsx, datos, cargar, wizard, asistente, archivo, filas, tabla, insert

Mapear columnas en la importación

Cómo asignar las columnas del archivo de origen a las columnas de la tabla de destino en el paso 2 del asistente de importación.

Dónde está: Árbol de esquema › clic derecho › Importar datos…

El paso 2 del asistente decide a qué columna de la tabla va cada columna del archivo.

- Cada fila representa una columna del archivo; el selector de la derecha ofrece las columnas de la tabla de destino.
- Las columnas que se llaman exactamente igual que una de la tabla —mayúsculas incluidas— llegan ya asignadas. Las demás empiezan en Ignorar: asígnalas a mano si corresponde.
- Ignorar deja fuera esa columna. Sirve cuando el archivo trae más columnas que la tabla, o para no importar un identificador que el servidor genera solo.

Antes de importar, comprueba que toda columna NOT NULL sin valor por defecto tenga una columna del archivo asignada: si no, el servidor rechaza esas filas.

Palabras clave: mapeo, columnas, asignación, ignorar, encabezado, origen, destino, importación, csv, json, xlsx

Modos de importación: qué hacer con los duplicados

Cuando una fila choca con una clave primaria o única: fallar, saltarla o reemplazar la que había. Lo que se ofrece depende del servidor.

Dónde está: Árbol de esquema › clic derecho › Importar datos…

En el paso 3 del asistente se elige qué pasa cuando una fila del archivo choca con una clave primaria o única que ya existe. El asistente sólo ofrece los modos que el servidor sabe cumplir.

Insertar (en todos los servidores; donde se ofrece Saltar duplicados, el asistente empieza en ése): la sentencia del lote que choca falla, y la importación lo dice. Úsalo cuando no debería haber duplicados y quieres enterarte si los hay.

Saltar duplicados: la fila que choca se descarta y el resto sigue. Sirve para cargar un archivo que en parte ya está en la tabla.

Reemplazar duplicados: la fila que había se borra y entra la del archivo. Ten en cuenta que dispara los triggers de borrado y que las columnas que el archivo no trae vuelven a su valor por defecto.

MySQLMariaDBAurora

Se ofrecen los tres.

PostgreSQL

Se ofrecen Insertar y Saltar duplicados: no hay reemplazo.

SQL ServerOracleClickHouse

Sólo Insertar, así que el selector no aparece.

Disponible en macOS, iPad, iPhone y Apple Vision Pro.

Palabras clave: insert, insert ignore, replace, duplicados, conflicto, clave primaria, clave única, modo, importación, replace into