Cette page décrit Calíope 1.5, la version que nous construisons en ce moment. La 1.4 est terminée et en cours d'examen par Apple, et la boutique propose aujourd'hui la 1.3 sur le Mac et la 1.2 sur iPad. Le changelog indique dans quelle version chaque fonction est arrivée.

Ajoute un bouton « Ouvrir dans Calíope » à chaque sujet. Ne fonctionne qu'avec l'app installée.

Catalogues

Explorer les Catalogues

Naviguez parmi les tables, vues, index, champs, routines, triggers et événements.

Où le trouver : Espace de travail › Outils › Catalogues

Ouvrez Catalogues depuis la barre de navigation du workspace. Sélectionnez une base de données dans le sélecteur en haut. Les sous-onglets affichent les différentes catégories d'objets.

Mots-clés : catalogues, objets, tables, vues, index, routines, catalogs

Afficher et modifier le DDL d'un objet

Affiche le CREATE TABLE, CREATE VIEW ou CREATE PROCEDURE et permet de le modifier et de l'appliquer.

Où le trouver : Catalogues › clic droit › Voir DDL

Faites un clic droit sur n'importe quel objet dans la liste des catalogues et sélectionnez Afficher le DDL. Le panneau inférieur affiche le DDL complet avec coloration syntaxique et sélection de texte sur les trois.

Modifier le DDL :
Appuyez sur Ouvrir dans ItemEditor (bouton en haut du panneau DDL) pour ouvrir l'éditeur dans une feuille modale avec le DDL pré-chargé :

- macOS : SQLTextEditor avec coloration syntaxique et manipulation de texte complète.
- iPad : TextEditor avec police à largeur fixe et clavier tactile.

Modifiez le DDL librement et appuyez sur Appliquer pour l'envoyer au serveur. Le bouton Réinitialiser annule vos modifications et revient au DDL original. Si le ALTER ou CREATE échoue, un message rouge apparaît dans la barre inférieure avec l'erreur MySQL.

Disponible sur macOS, iPad et iPhone.

Mots-clés : DDL, CREATE TABLE, définition, structure, schema

Créer une nouvelle table

Créez une table directement depuis la barre d'outils des Catalogues.

Où le trouver : Catalogues › Nouvelle table

Dans la barre d'outils des Catalogues, utilisez le bouton Nouvelle table pour ouvrir le Constructeur de tables dans un nouvel onglet. Vous pouvez aussi ouvrir le menu contextuel d'une table existante — clic droit sur macOS, appui long sur iPad — et choisir Concevoir la table pour la modifier.

Le constructeur est divisé en quatre sections accessibles depuis sa barre d'onglets :

- Colonnes — définissez le nom, le type de données et les contraintes de chaque colonne. Sélectionnez une ligne dans la liste pour modifier ses propriétés dans le panneau inférieur (Identification, Contraintes, Valeur par défaut, Jeu de caractères).
- Index — gérez les index PRIMARY, UNIQUE, INDEX et FULLTEXT.
- Clés étrangères — configurez les relations entre tables avec les actions ON DELETE/ON UPDATE.
- Options — ajustez le moteur (ENGINE), le jeu de caractères et le commentaire de table.

La section Aperçu SQL en bas affiche en temps réel le DDL qui sera exécuté. Cliquez sur Créer la table (ou Appliquer les modifications en mode édition) pour envoyer le DDL au serveur.

Mots-clés : nouvelle table, create table, créer, DDL, constructeur, colonnes, index, clés étrangères

Créer des vues, index, routines, triggers et événements

Accédez aux éditeurs visuels de chaque type d'objet depuis la barre d'outils.

Où le trouver : Catalogues › Nouvelle vue / Nouvel index / Nouvelle routine / Nouveau trigger / Nouvel événement

La barre d'outils des Catalogues comprend des boutons dédiés pour créer chaque type d'objet :

- Nouvelle vue — ouvre l'éditeur de vues
- Nouvel index — ouvre l'éditeur d'index
- Nouvelle routine — ouvre l'éditeur de fonctions et de procédures stockées
- Nouveau trigger — ouvre l'éditeur de déclencheurs
- Nouvel événement — ouvre l'éditeur d'événements du planificateur MySQL

Chaque éditeur génère le DDL correspondant (CREATE VIEW, CREATE INDEX, CREATE PROCEDURE, etc.) et l'exécute sur le serveur après confirmation.

Mots-clés : vue, index, routine, trigger, événement, créer, DDL, procédure stockée, view, event

Modifier des vues, routines, triggers et événements

Modifiez des objets existants avec l'éditeur visuel ou directement dans l'éditeur SQL.

Où le trouver : Catalogues › clic droit › Modifier (formulaire visuel) / Ouvrir dans ItemEditor

Ouvrez le menu contextuel d'une vue, d'une routine, d'un trigger ou d'un événement dans l'onglet correspondant des Catalogues — clic droit sur macOS, appui long sur iPad. Outre Voir le DDL, il propose deux façons de modifier :

- Modifier (formulaire visuel) — ouvre l'éditeur graphique avec les champs pré-remplis
- Ouvrir dans ItemEditor — ouvre le DDL complet de l'objet dans l'éditeur SQL pour modification manuelle

Les modifications effectuées dans le formulaire visuel génèrent un ALTER ou DROP + CREATE selon le type d'objet.

Mots-clés : modifier vue, modifier routine, modifier trigger, modifier événement, formulaire, ItemEditor

Remplir une table avec des données fictives

Générez automatiquement des lignes de test pour une table.

Où le trouver : Catalogues › clic droit › Peupler avec des données factices

Ouvrez le menu contextuel d'une table dans l'onglet Tables des Catalogues — clic droit sur macOS, appui long sur iPad — et sélectionnez Remplir avec des données fictives. Calíope générera des instructions INSERT exemples adaptées aux types de colonnes de la table.

Mots-clés : données fictives, dummy data, seed, test data, remplir, fake data

Mode lecture seule

Empêche les modifications accidentelles des objets du catalogue.

Où le trouver : Catalogues › Lecture seule

Activez le commutateur Lecture seule dans la barre des Catalogues pour désactiver tous les boutons de création et de suppression. Utile lors de l'exploration d'une base de données de production.

Mots-clés : lecture seule, read only, protéger, production

Éditeur de vues

Créez ou modifiez une vue MySQL avec les options d'algorithme, de sécurité et de vérification.

Où le trouver : Catalogues › Nouvelle vue / Modifier la vue

L'Éditeur de vues s'ouvre lorsque vous appuyez sur Nouvelle vue, ou depuis le menu contextuel d'une vue existante — clic droit sur macOS, appui long sur iPad — avec Modifier (formulaire visuel). Il génère automatiquement le DDL CREATE [OR REPLACE] VIEW.

Champs disponibles :

- Nom — nom de la vue dans la base de données sélectionnée.
- OR REPLACE (bouton bascule) — lorsqu'il est activé, le DDL généré inclut OR REPLACE pour remplacer la vue si elle existe déjà sans avoir à la supprimer au préalable.
- Algorithme — contrôle la façon dont MySQL traite la vue :
- UNDEFINED (par défaut) — MySQL choisit l'algorithme optimal.
- MERGE — fusionne la requête de la vue avec la requête externe. Plus efficace.
- TEMPTABLE — matérialise la vue dans une table temporaire avant d'appliquer les filtres externes.
- SQL SECURITY — définit les privilèges avec lesquels la vue s'exécute :
- DEFINER (par défaut) — s'exécute avec les privilèges de l'utilisateur qui l'a créée.
- INVOKER — s'exécute avec les privilèges de l'utilisateur qui l'interroge.
- CHECK OPTION — valide que les lignes modifiées via la vue restent visibles dans celle-ci :
- LOCAL — vérifie uniquement la condition de cette vue.
- CASCADED — vérifie également les conditions des vues sous-jacentes.
- SQL SELECT — l'éditeur de texte avec la requête SELECT qui définit le contenu de la vue.

Appuyez sur Appliquer pour exécuter le DDL sur le serveur.

Mots-clés : vue, view, CREATE VIEW, OR REPLACE, algorithme, MERGE, TEMPTABLE, SQL SECURITY, DEFINER, INVOKER, CHECK OPTION, éditeur de vues

Éditeur de routines et fonctions

Créez ou modifiez des procédures stockées et des fonctions avec une interface visuelle.

Où le trouver : Catalogues › Nouvelle routine / Modifier la routine

L'Éditeur de routines s'ouvre lorsque vous appuyez sur Nouvelle routine ou modifiez une routine existante depuis l'onglet Routines des Catalogues. Il génère le DDL CREATE OR REPLACE PROCEDURE ou CREATE OR REPLACE FUNCTION.

Champs disponibles :

- Nom — nom de la procédure ou de la fonction.
- Type — choisissez entre PROCEDURE (procédure) ou FUNCTION (fonction).
- Paramètres — ajoutez des paramètres avec le bouton +. Chaque paramètre possède :
- Mode : IN (entrée), OUT (sortie), INOUT (entrée et sortie). Disponible uniquement pour les procédures.
- Nom du paramètre.
- Type de données (p. ex. INT, VARCHAR(100), DATETIME).
- Type de retour (fonctions uniquement) — le type de données retourné par la fonction (p. ex. INT, VARCHAR(255)).
- Déterministe — active DETERMINISTIC si la fonction retourne toujours le même résultat pour les mêmes paramètres d'entrée. Important pour la réplication et le cache de requêtes.
- Accès aux données — déclare le comportement de la routine vis-à-vis de la base de données :
- CONTAINS SQL — peut contenir du SQL mais ne lit ni n'écrit de données.
- NO SQL — ne contient pas d'instructions SQL.
- READS SQL DATA — lit des données mais ne les modifie pas.
- MODIFIES SQL DATA — peut insérer, mettre à jour ou supprimer des données.
- Corps — éditeur de texte avec le code SQL du corps de la routine (entre BEGIN et END).

Appuyez sur Appliquer pour exécuter le DDL sur le serveur.

Mots-clés : routine, procédure, fonction, PROCEDURE, FUNCTION, paramètres, IN, OUT, INOUT, deterministic, CONTAINS SQL, CREATE PROCEDURE, CREATE FUNCTION

Éditeur de triggers

Créez ou modifiez des triggers MySQL associés à une table.

Où le trouver : Catalogues › Nouveau trigger / Modifier le trigger

L'Éditeur de triggers s'ouvre lorsque vous appuyez sur Nouveau trigger dans la barre d'outils des Catalogues, ou depuis le menu contextuel d'un trigger existant — clic droit sur macOS, appui long sur iPad — avec Modifier (formulaire visuel). L'arbre de schéma ne l'ouvre pas : son menu contextuel ne propose que SELECT * FROM, Importer des données… et Construire le WHERE….

Champs disponibles :

- Nom — nom du trigger.
- Timing — quand le trigger se déclenche par rapport à l'opération :
- BEFORE — s'exécute avant l'opération. Permet de modifier les valeurs de NEW avant qu'elles soient écrites.
- AFTER — s'exécute après l'opération.
- Événement — l'opération qui déclenche le trigger :
- INSERT — lors de l'insertion d'une ligne.
- UPDATE — lors de la mise à jour d'une ligne.
- DELETE — lors de la suppression d'une ligne.
- Corps — éditeur de texte avec le code du trigger. L'espace réservé inclut des commentaires avec les références NEW.colonne (nouvelle valeur) et OLD.colonne (valeur précédente) :
- NEW disponible dans les triggers INSERT et UPDATE.
- OLD disponible dans les triggers UPDATE et DELETE.

Appuyez sur Appliquer pour exécuter le DDL sur le serveur.

Remarque : MySQL n'autorise qu'un seul trigger par combinaison de timing + événement + table. Si un trigger BEFORE INSERT existe déjà sur la table, vous ne pouvez pas en créer un autre avec la même combinaison.

Mots-clés : trigger, déclencheur, BEFORE, AFTER, INSERT, UPDATE, DELETE, NEW, OLD, CREATE TRIGGER, éditeur de triggers

Éditeur d'événements du planificateur

Créez ou modifiez des événements du planificateur d'événements MySQL.

Où le trouver : Catalogues › Nouvel événement / Modifier l'événement

L'Éditeur d'événements s'ouvre lorsque vous appuyez sur Nouvel événement dans la barre d'outils des Catalogues ou modifiez un événement existant. Nécessite que le planificateur d'événements MySQL soit activé (SET GLOBAL event_scheduler = ON).

Champs disponibles :

- Nom — nom de l'événement.
- État — contrôle si l'événement est actif :
- ENABLE — l'événement s'exécute selon sa programmation.
- DISABLE — l'événement est en pause.
- SLAVESIDE_DISABLED — désactivé sur un réplica de réplication.
- Type de planification :
- Une fois (AT) — s'exécute à une date et heure spécifiques. Utilisez le sélecteur de date/heure pour choisir le moment.
- Récurrent (EVERY) — se répète toutes les N unités de temps. Configurez le nombre et l'unité (SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR).
- Date de début (récurrent) — quand l'événement récurrent commence à s'exécuter.
- Date de fin (récurrent, facultatif) — activez le bouton bascule pour définir quand il cesse de s'exécuter.
- Corps — code SQL exécuté par l'événement. Peut être un bloc BEGIN … END avec plusieurs instructions.

Appuyez sur Appliquer pour exécuter le DDL sur le serveur.

Mots-clés : événement, event scheduler, CREATE EVENT, ENABLE, DISABLE, AT, EVERY, récurrent, planificateur, cron, schedule

Éditeur d'index

Créez un index sur une table avec un type, une méthode et des colonnes configurables.

Où le trouver : Catalogues › Nouvel index / Créer un index

L'Éditeur d'index s'ouvre depuis l'onglet Index des Catalogues : avec une table sélectionnée, le bouton Nouvel index de la barre d'outils ; sur un index qui existe déjà, le menu contextuel — clic droit sur macOS, appui long sur iPad — avec Modifier (formulaire visuel). L'arbre de schéma ne l'ouvre pas.

Champs disponibles :

- Nom — nom de l'index sur la table.
- Type :
- INDEX — index standard, autorise les doublons.
- UNIQUE — index unique, rejette les valeurs dupliquées dans la colonne ou la combinaison de colonnes indexées.
- FULLTEXT — recherche en texte intégral. Dans MySQL et MariaDB, uniquement pour les colonnes CHAR, VARCHAR ou TEXT et le moteur MyISAM/InnoDB (MySQL 5.6+).
- SPATIAL — données géospatiales. Dans MySQL et MariaDB, uniquement pour les colonnes de type spatial et le moteur MyISAM.
- Méthode (disponible pour INDEX et UNIQUE) :
- BTREE — arbre B, la méthode la plus courante. Prend en charge les comparaisons de plages, LIKE 'abc%', ORDER BY.
- HASH — table de hachage, prend uniquement en charge les comparaisons d'égalité exacte. Disponible avec le moteur MEMORY.
- Colonnes — ajoutez les colonnes qui composent l'index avec le champ de nom et, optionnellement, la longueur du préfixe (nombre de caractères à indexer ; utile pour les longues colonnes TEXT ou VARCHAR).

La clé primaire est gérée depuis l'onglet Colonnes du Constructeur de tables, et non depuis cet éditeur.

Appuyez sur Appliquer pour exécuter ALTER TABLE … ADD INDEX sur le serveur.

Mots-clés : index, CREATE INDEX, UNIQUE, FULLTEXT, SPATIAL, BTREE, HASH, colonnes, préfixe, ALTER TABLE, éditeur d'index