figbellTélécharger

Fonctionnalités

Tables, colonnes et relations s’écrivent dans un langage simple ; à côté, un diagramme ER se dessine en direct, et chaque modification faite dans le diagramme est réécrite dans le code. Tabliva signale les problèmes du schéma, propose des normalisations et génère le SQL et le fichier de migration versionné qui amènent une base de données à l’état du code. PostgreSQL, MySQL / MariaDB et SQLite.

Fonctions principales

Un langage de schéma lisible
Tables, types logiques, clés primaires et étrangères (->), index (partiels et d’expression), contraintes check et enums s’écrivent dans des fichiers .tabliva. Les particularités de chaque dialecte s’ajoutent par annotations (@postgres(type: "jsonb")) ; vues, déclencheurs et fonctions, par des blocs sql bruts. L’éditeur offre la coloration syntaxique, la complétion et la recherche.
Diagramme ER bidirectionnel
Le diagramme se met à jour pendant la saisie ; en cas d’erreur de syntaxe, le dernier état valide reste affiché et l’erreur est indiquée avec sa ligne. Ajouter, renommer ou supprimer des tables, colonnes, relations et index, ou changer un type dans le diagramme ne réécrit que la ligne de code concernée ; les commentaires sont conservés. La disposition est enregistrée dans un fichier à part (diagram.tabliva-layout.json).
Problèmes : 55 règles
Clés, suggestions de clés étrangères manquantes avec niveau de confiance, types (p. ex. float pour des montants), index, données répétées, nommage, structure et compatibilité avec le dialecte. Chaque problème a une explication simple et une correction ; les corrections sûres s’appliquent en une fois. Ignorer un problème ou désactiver une règle est écrit dans le fichier kurallar.tabliva.
Normalisation
Les dépendances fonctionnelles se déclarent dans le code par une ligne depends ou sont suggérées à partir des noms de colonnes. Pour chaque table s’affichent les étapes de la 1NF à la BCNF, des corrections avec aperçu avant / après (déplacer vers une autre table, nouvelle table, table enfant, copie volontaire) et le SQL de migration des données pour le dialecte.
Plan de modifications et fichiers de migration
Le code est comparé à une cible (dossier de migrations, instantané ; sur ordinateur, une base de données en direct). Les renommages sont détectés ; chaque étape porte des étiquettes de risque comme la perte de données, la réécriture de la table ou le verrouillage. Le SQL est généré pour PostgreSQL, MySQL / MariaDB et SQLite ; le fichier de migration est écrit dans le dossier migrations/ sous un nom daté et sa somme de contrôle est ajoutée à tabliva.sum.
Importer un schéma existant
Les exports SQL (pg_dump, mysqldump, SQLite .schema ou CREATE TABLE écrit à la main), le DBML et un autre projet Tabliva sont lus ; on choisit un fichier par table ou un fichier unique. Seul le schéma est repris ; les lignes INSERT et COPY sont ignorées. Sur ordinateur, le schéma peut aussi être lu directement depuis une base de données.
Synchronisation
Source et cible (code, instantané, dossier de migrations ; sur ordinateur, une base de données) sont comparées côte à côte ou sur une seule colonne, et le sens peut être inversé. Les modifications faites dans la base sans fichier de migration apparaissent comme une dérive ; le script de synchronisation est généré à partir des modifications sélectionnées.
Documentation
Le dictionnaire de données s’enregistre en HTML (un seul fichier qui ne charge rien depuis le réseau), en Markdown ou, via la fenêtre d’impression, en PDF. Les descriptions proviennent des commentaires /// du code ; une description saisie ici est réécrite dans le code. Le diagramme ER s’exporte en PNG / SVG clair ou sombre, le schéma en SQL ou DBML.
Données d’exemple et historique du schéma
Des données d’exemple respectant types, contraintes et relations sont générées ; la même graine donne toujours les mêmes données (SQL, CSV ou JSON). L’historique du schéma est tiré des fichiers de migration et des instantanés ; deux moments quelconques peuvent être comparés.
Base de données en direct (ordinateur)
L’application pour ordinateur se connecte à PostgreSQL et MySQL / MariaDB (avec options SSL) : import du schéma depuis la base, synchronisation, « Appliquer à la base de données » avec confirmation (accepter la perte de données et saisir le nom de la base), chargement des données d’exemple et contrôles de données pour les relations suggérées. Dans le navigateur et sur téléphone, ces fonctions ne sont pas affichées.
Dossier de projet et partage
Les projets sont conservés sur cet appareil ; dans les navigateurs capables d’écrire dans un dossier et sur ordinateur, un projet peut être relié à un dossier et chaque modification y est écrite (p. ex. un dépôt Git). Les projets s’exportent et s’importent en ZIP ; un fichier, le projet ou le SQL du plan se partagent avec la fonction de partage de l’appareil.
Projet d’exemple, sauvegarde et hors ligne
Au premier lancement, le schéma d’une boutique avec quelques problèmes volontaires est fourni ; « Rajouter le projet d’exemple » le rétablit. « Sauvegarder… » enregistre projets et réglages dans un seul fichier (sans les liaisons aux dossiers ni les mots de passe). Aucun compte n’est nécessaire ; tout, sauf la base de données en direct, fonctionne hors ligne.

Appareils et navigateurs

  • Sur ordinateur, les fichiers du projet et les cibles sont à gauche, le code et le diagramme au centre ; les vues (Éditeur, Modifications, Problèmes, Normalisation, Synchronisation, Documentation, Outils) se choisissent dans la barre du haut. Sur téléphone et sur tablette en portrait, la navigation du bas comporte Code, Diagramme, Problèmes, Plan et Plus.
  • Les fonctions de base de données en direct (import depuis une base, base de données dans Synchronisation, « Appliquer à la base de données », chargement des données d’exemple, contrôles de données) se trouvent uniquement dans l’application pour ordinateur. Dans le navigateur et sur téléphone, on écrit des fichiers de migration ou on enregistre et partage le SQL.
  • L’écriture directe dans un dossier est disponible dans Chrome et Edge et dans l’application pour ordinateur ; dans Safari, Firefox et sur téléphone, les projets restent sur cet appareil et se transfèrent en ZIP.
Capture d'écran de Tabliva : espace de travail avec un contenu d'exemple
Ordinateur
Capture d'écran de Tabliva : espace de travail avec un contenu d'exemple
Tablette
Capture d'écran de Tabliva : espace de travail avec un contenu d'exemple
Téléphone

Raccourcis clavier

⌘ et ⌥ sont utilisées sous macOS ; Ctrl et Alt sous Windows et Linux.

RaccourciAction
1 – 7Vues
Ctrl/⌘ SEnregistrer
Ctrl/⌘ OProjets
Ctrl/⌘ IImporter
Ctrl/⌘ ⇧ PVoir le plan
Ctrl/⌘ FRechercher dans le code
Ctrl/⌘ Z · ⇧ ZAnnuler · rétablir
F2Renommer la table (diagramme)
← → ↑ ↓Déplacer la carte sélectionnée
EntréeOuvrir la fiche de la table
SupprSupprimer la table

Sur écran tactile, le diagramme se zoome et se déplace à deux doigts ; pour tracer une relation, touchez d’abord la colonne source, puis la colonne cible. Un appui long sur la carte d’une table ouvre le menu contextuel ; menus et boîtes de dialogue s’ouvrent par le bas.

Obtenir Tabliva

Essayez-le dans le navigateur sans installation ; pour une utilisation continue, achetez la version pour macOS, Windows ou Linux.