Esta página describe Calíope 1.5, la versión que estoy construyendo ahora mismo. La 1.4 ya 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.
Crea o modifica tablas con interfaz visual sin escribir DDL manualmente.
Dónde está: Catálogos › clic derecho › Nueva tabla / Diseñar tabla
El Constructor de tablas se abre desde Catálogos: pulsa Nueva tabla en la barra de herramientas o haz clic derecho sobre una tabla existente y elige Diseñar tabla. Catálogos se abre en modo de solo lectura, así que antes hay que desactivarlo. Está disponible en macOS, iPad e iPhone y en las tres se abre como una pestaña persistente del Espacio de Trabajo: puedes cambiar a otra pestaña (por ejemplo Catálogos para consultar otra tabla) y volver sin perder el trabajo. Cada tabla se abre en una pestaña propia.
El editor tiene cuatro pestañas: Columnas, Índices, Claves foráneas y Opciones. Debajo, la Vista previa SQL enseña el CREATE TABLE —o, para una tabla existente, el ALTER TABLE— que producen tus cambios, y sigue cada edición; Copiar lo lleva al portapapeles. Cuando termines, pulsa Crear tabla (o Aplicar cambios en una tabla existente) para ejecutarlo en el servidor. Restablecer descarta lo que cambiaste: vuelve a los valores por defecto en una tabla nueva, o a la definición del servidor en una existente.
Agrega, edita y reordena las columnas de la tabla.
Dónde está: Constructor de tablas › Pestaña Columnas
En la pestaña Columnas, pulsa + para agregar una columna; los botones de al lado duplican la columna elegida, la suben o la bajan, y la eliminan. Pulsa una columna de la lista para editarla debajo: el nombre, el tipo de dato —la lista es la del motor del servidor—, la longitud cuando el tipo la lleva (por ejemplo 500 para VARCHAR), y las restricciones Permite NULL, Clave primaria (PRIMARY KEY) y Único (UNIQUE), más las que sólo llevan algunos tipos. Solo aparecen las que admite el tipo elegido, y marcar una columna como clave primaria apaga NULL.
MySQLMariaDBAurora
En los tipos enteros, Auto incremento (AUTO_INCREMENT) numera las filas solo y Sin signo (UNSIGNED) deja fuera los valores negativos.
SQL ServerPostgreSQL
En los tipos enteros, Auto incremento (IDENTITY) numera las filas solo. No hay Sin signo.
El valor por defecto puede ser ninguno, un valor literal, NULL, CURRENT_TIMESTAMP o una expresión. Cada columna puede llevar además un comentario.
MySQLMariaDBAurora
Las columnas de texto pueden tener su propio juego de caracteres y cotejación; si no se tocan, heredan los de la tabla.
SQL ServerPostgreSQL
El constructor no ofrece juego de caracteres ni cotejación por columna.
SQL Server
El comentario se escribe como la propiedad extendida MS_Description.
PostgreSQL
El comentario se escribe con COMMENT ON COLUMN.
Una columna que ya existía conserva su nombre original, así que renombrarla se convierte en un renombrado en el ALTER TABLE en vez de borrar la columna y crear otra.
SQL ServerPostgreSQL
Una columna nueva va siempre al final de la tabla: el motor no tiene AFTER. Subir o bajar una columna nueva no cambia nada en el servidor, y la vista previa SQL lo dice en un comentario.
Palabras clave: columna, tipo de dato, INT, VARCHAR, PRIMARY KEY, AUTO_INCREMENT, nullable
Gestiona los índices de la tabla: INDEX y UNIQUE, y FULLTEXT y SPATIAL donde el motor los tiene.
Dónde está: Constructor de tablas › Pestaña Índices
En la pestaña Índices, pulsa + para agregar un índice. Dale un nombre y elige el tipo; la lista ofrece solo los tipos que tiene el motor del servidor: INDEX (normal) y UNIQUE (sin duplicados).
MySQLMariaDBAurora
Además, FULLTEXT (búsqueda de texto completo en columnas CHAR/VARCHAR/TEXT) y SPATIAL (datos geoespaciales).
SQL ServerPostgreSQL
El constructor no tiene FULLTEXT ni SPATIAL.
Marca las columnas que lo componen: el orden en que las marcas es el orden del índice, y el número de al lado lo indica. Un índice puede abarcar varias columnas (índice compuesto).
Haz clic derecho sobre un índice de la lista para editarlo o eliminarlo. Editar uno que ya existía lo borra y lo vuelve a crear.
La clave primaria se define por columna desde la pestaña Columnas (Clave primaria (PRIMARY KEY)); no aparece aquí como índice separado.
Define relaciones de integridad referencial entre tablas.
Dónde está: Constructor de tablas › Pestaña Claves foráneas
En la pestaña Claves foráneas, pulsa + para agregar una FK. Dale un nombre, elige la columna local, la base de datos —la misma, salvo que elijas otra— y la tabla de referencia, y escribe la columna referenciada.
Elige las acciones ON DELETE y ON UPDATE: RESTRICT (error si viola la integridad), CASCADE (propaga el cambio), SET NULL (pone NULL en la FK) o NO ACTION.
MySQLMariaDBAurora
NO ACTION equivale a RESTRICT. Ambas tablas tienen que usar el motor de almacenamiento InnoDB.
SQL Server
No hay RESTRICT: el constructor escribe NO ACTION, que en este motor hace lo mismo. Una clave foránea no puede apuntar a otra base de datos, y la vista previa SQL lo dice en un comentario.
Haz clic derecho sobre una clave de la lista para editarla o eliminarla; editar una que ya existía la borra y la vuelve a crear. El constructor genera el CONSTRAINT con nombre explícito, para poder eliminarlo después por ese nombre.
Lo que es de la tabla entera: su comentario y, donde el motor los tiene, motor de almacenamiento, formato de fila, juego de caracteres y cotejación.
Dónde está: Constructor de tablas › Pestaña Opciones
La pestaña Opciones reúne lo que es de la tabla entera.
MySQLMariaDBAurora
El Motor (ENGINE) de almacenamiento, el Formato de fila (ROW_FORMAT), el Juego de caracteres y la Cotejación de la tabla —cambiar el juego de caracteres elige la primera cotejación de ese juego— y el Comentario de tabla. Las columnas de texto que se dejan en «(hereda tabla)» toman el juego de caracteres de la tabla.
MySQLMariaDBAurora
El formato de fila se elige al crear la tabla: en una tabla existente la pestaña no lo ofrece, porque el constructor no lo cambia. Las listas de motores, juegos de caracteres y cotejaciones las da el servidor.
SQL ServerPostgreSQL
El motor no tiene motor de almacenamiento, formato de fila ni juego de caracteres por tabla, así que la pestaña sólo trae el Comentario de tabla.
SQL Server
El comentario se escribe como la propiedad extendida MS_Description.