Esta página describe Calíope 1.5, la versión que estamos construyendo ahora mismo. La 1.4 está terminada y en revisión de App Store, y la tienda sirve hoy la 1.3 en el Mac y la 1.2 en iPad. 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.
Visualiza las relaciones entre tablas de una base de datos.
Dónde está: Espacio de Trabajo › Herramientas › ER
Abre el Diagrama ER desde la barra de navegación del workspace. Selecciona la base de datos en el selector superior y Calíope cargará las tablas con sus columnas y relaciones de clave foránea existentes.
El diagrama muestra las tablas como nodos con columnas y tipo de dato. Las líneas entre tablas representan las FKs detectadas en el servidor.
Palabras clave: ER, entidad relación, diagrama, FK, foreign key, relaciones
Ampliar y reducir — en macOS, la rueda del ratón, el pellizco de dos dedos en el trackpad o los botones de la barra; en iPad, el pellizco o esos mismos botones. Entre el − y el + de la barra va el porcentaje, que dice a qué escala estás, y los atajos son ⌘−, ⌘+ y ⌘0. Los límites son los mismos en las tres: del 18 % al 400 %, y el botón se apaga al llegar al tope.
Desplazar el lienzo — arrastra sobre una zona vacía, en las tres. Sobre un nodo, el arrastre mueve la tabla.
Volver al encuadre — el botón Ajustar a la ventana (⌘0) encuadra todas las tablas. El diagrama se encuadra además solo al abrirse y al cambiar el tamaño de la ventana.
El botón Disposición automática reorganiza los nodos para minimizar solapamientos.
Dibuja una nueva relación de clave foránea entre dos tablas.
Dónde está: Diagrama ER › clic derecho › Crear relación FK
Abre el menú contextual de una tabla —clic derecho en macOS, mantener pulsado en iPad— y selecciona Nueva relación FK…. Se abre un diálogo para elegir la tabla y columna de origen, y la tabla y columna de destino. Al confirmar, Calíope ejecuta el ALTER TABLE … ADD FOREIGN KEY en el servidor.
Sólo en macOS, además: mantén pulsada ⌃ (Control) y arrastra desde una tabla hasta la de destino; mientras dura el gesto se dibuja una línea elástica y al soltar se abre ese mismo diálogo. En iPad el gesto no existe, y la clave foránea se crea desde el menú contextual.
Persiste la posición de los nodos para mantener tu disposición entre sesiones.
Dónde está: Diagrama ER › Guardar layout
Pulsa el botón Guardar layout en la barra de herramientas del Diagrama ER. Las posiciones actuales de todos los nodos de tabla se guardan en UserDefaults bajo la clave caliope_er_layout_v1.
La próxima vez que abras el diagrama para la misma base de datos, los nodos se restaurarán en las posiciones guardadas. Si no hay layout guardado, el diagrama aplica el auto-layout automáticamente.
En la barra de herramientas del Diagrama ER, el botón de exportación ofrece dos formatos: SVG (vectorial, editable con Illustrator o Inkscape) y PDF (listo para impresión o presentación). El archivo se guarda en la ubicación que elijas con el diálogo del sistema.
Palabras clave: exportar, SVG, PDF, guardar, imprimir, diagrama
Consulta la estructura completa de una tabla directamente en el diagrama.
Dónde está: Diagrama ER › clic derecho › Editar estructura de tabla
Abre el menú contextual de un nodo de tabla en el diagrama —clic derecho en macOS, mantener pulsado en iPad— y selecciona Editar estructura de tabla. Se abre un panel con el CREATE TABLE completo de la tabla seleccionada.
Palabras clave: DDL, CREATE TABLE, estructura, ver tabla, show create
Compara dos bases de datos del mismo servidor —tablas, vistas, rutinas, triggers y eventos— y genera el script de migración.
Dónde está: Espacio de Trabajo › Herramientas › Diff
La herramienta de comparación de esquemas (Schema Diff) analiza dos bases de datos del mismo servidor y muestra exactamente qué ha cambiado en tablas, vistas, procedimientos, funciones, triggers y eventos.
Cómo abrir Schema Diff:
Pulsa Diff (ícono de flechas contrapuestas) en la barra lateral Herramientas. Se abre en una nueva pestaña.
Uso básico:
1. Selecciona la BD origen y la BD destino en los selectores de la barra superior.
2. Pulsa Comparar. Calíope lee el SHOW CREATE … de cada objeto en las dos bases: la definición canónica que escribe el propio servidor.
3. Activa el toggle Solo cambios para ocultar lo que coincide.
4. El informe se agrupa por tipo de objeto. Despliega cualquier fila: en una tabla modificada verás cambio por cambio la definición que hay y la que quedará; en una vista o rutina modificada, las dos definiciones completas enfrentadas; en un objeto nuevo o eliminado, su DDL.
5. Pulsa Copiar SQL para llevarte el guion entero, o el botón de copiar de una fila para llevarte solo ese objeto.
Qué genera para las tablas:
- CREATE TABLE IF NOT EXISTS completo para las que faltan en el origen, con columnas, índices y opciones.
- DROP TABLE IF EXISTS para las que sobran.
- ALTER TABLE con ADD/DROP/MODIFY COLUMN conservando tipo, nulabilidad, valor por defecto, comentario, juego de caracteres y expresión de columna generada.
- Altas y bajas de clave primaria, índices y restricciones CHECK, y cambios de opciones (ENGINE, DEFAULT CHARSET, COLLATE, ROW_FORMAT, COMMENT).
Qué genera para el resto de objetos:
Una vista o una rutina no se puede parchear por partes: si su definición difiere, el guion la rehace (DROP + CREATE) con la del destino, reescribiendo las referencias al esquema de origen para que apunte a la base correcta.
Orden del guion:
Primero las tablas; después las claves foráneas, en su propio bloque, porque al crear varias tablas el orden alfabético no respeta las dependencias; luego un USE y el resto de objetos por tipo, y dentro de cada tipo ordenados por dependencias — una vista construida sobre otra se emite después de ella.
Lo que se ignora a propósito:
El contador de AUTO_INCREMENT, que avanza con cada inserción y nunca coincide entre dos copias.
Lo que no cubre:
Un cambio de particionado se detecta y se anota como aviso, pero no se convierte en SQL: reparticionar reescribe la tabla entera. Las columnas de una tabla existente no se reordenan, y una columna renombrada se ve como una baja más un alta. La comparación de vistas, rutinas, triggers y eventos es textual, así que un simple cambio de formato o de DEFINER cuenta como diferencia — y en MariaDB el DDL de un trigger es el texto literal con el que se escribió. Un evento con hora de inicio distinta también difiere, porque esa hora forma parte de su definición.
Revisa siempre el script antes de ejecutarlo en producción.
Caso de uso típico:
Comparar el esquema de desarrollo (origen) con producción (destino) antes de un despliegue para generar el script de migración sin escribirlo manualmente.
Disponible en macOS, iPad e iPhone.
Palabras clave: schema diff, comparar, esquema, alter table, migración, diferencias, ADD COLUMN, DROP COLUMN, MODIFY COLUMN, SHOW CREATE TABLE, CREATE TABLE, índices, claves foráneas, particionado, solo cambios
Añade una segunda base de datos al canvas del diagrama ER para visualizar relaciones entre bases de datos.
Dónde está: Diagrama ER › + BD
El Diagrama ER puede mostrar tablas de dos bases de datos simultáneamente en el mismo canvas, incluyendo las claves foráneas que cruzan de una base a otra.
Cómo añadir una segunda base de datos:
1. Con el Diagrama ER abierto, selecciona la BD principal en el selector izquierdo de la barra de herramientas.
2. Pulsa el botón + BD en la barra de herramientas para añadir una segunda base de datos.
3. Selecciona la segunda BD en el nuevo selector que aparece.
4. El canvas se actualiza automáticamente mostrando las tablas de ambas bases.
Codificación de colores:
- Cabecera azul — tablas de la BD principal.
- Cabecera verde azulado (teal) — tablas de la segunda BD.
- Flechas naranja — relaciones de clave foránea que cruzan de una base a otra.
- Flechas normales — relaciones dentro de la misma base de datos.
Requisito para relaciones cross-database:
Las claves foráneas deben estar declaradas en information_schema. MySQL/MariaDB registra las FKs en information_schema.KEY_COLUMN_USAGE. Si las relaciones entre bases no aparecen, verifica que las FKs existen formalmente en el servidor (no son solo convenciones de nombres).
Navegación y exportación:
Todas las funciones del diagrama ER normal aplican al canvas multi-base: zoom, pan, auto-layout, guardar layout, exportar SVG/PDF y ver DDL de tablas. Consulta los temas de Diagrama ER para más detalles.