Comment construire votre base de données avec MySQL Workbench

MySQL Workbench vous permet de créer vos tables, champs et relations de manière visuelle, simple et efficace.


Tutoriel MySQL Workbench

La vidéo montre étape par étape comment construire votre schéma de base de données et vos relations avec le logiciel MySQL Workbench.

C'est une façon simple de créer vos relations internes/externes avec des clés étrangères.

Une fois que la structure et les relations de votre base de données sont prêtes, l'étape suivante consiste à ouvrir le générateur CRUD et à commencer à générer le contenu de votre panneau d'administration.


A propos de MySQL Worbench

MySQL Workbench est un outil visuel unifié pour les architectes de bases de données, les développeurs et les administrateurs de bases de données. MySQL Workbench permet la modélisation des données, le développement SQL et fournit des outils d'administration complets pour la configuration du serveur, l'administration des utilisateurs, la sauvegarde et bien plus encore. MySQL Workbench est disponible sur Windows, Linux et Mac OS X.

https://www.mysql.com/products/workbench/

MySQL Workbench est un logiciel gratuit fourni par l'équipe MySQL. Il vous permet, après avoir établi votre connexion, de créer vos tables, champs et relations, et de les intégrer dans des diagrammes.

Les diagrammes fournissent un visuel fonctionnel du modèle, que vous pouvez éditer immédiatement à l'aide d'une série d'outils (création/modification de relations, ajout de champs, etc.)

Vous exportez ensuite vers votre base de données pour la synchroniser.

En bref, MySQL Workbench rend le travail avec vos bases de données beaucoup plus agréable, simple et efficace que l'interface PHPMyAdmin.

Examinons de plus près comment commencer.


Créez votre base de données avec phpMyAdmin

MySQL Workbench nécessite une connexion à une base de données, qui doit donc être créée au préalable avec PHPMyAdmin.

  1. Ouvrez PHPMyAdmin dans votre navigateur

  2. Cliquez sur le bouton Nouveau en haut à gauche, entrez un nom pour votre nouvelle base de données, choisissez le charset dans le menu déroulant (habituellement "utf8_general_ci" est un bon choix) puis cliquez sur créer.

    Create a new database with PHPMyAdmin
    Créez une nouvelle base de données avec PHPMyAdmin

Connectez MySQL Workbench à votre serveur

Maintenant que vous avez créé votre base de données, la deuxième étape consiste à y connecter MySQL Workbench.

Ouvrez MySQL Workbench, puis allez dans base de données => gérer les connexions.
Créez une nouvelle connexion et entrez vos paramètres de connexion :

  • nom d'hôte ("localhost" pour une connexion sur votre serveur local)
  • le port (généralement "3306")
  • mot de passe
  • schéma par défaut ; vous pouvez choisir votre base de données ici, ou laisser ce champ vide pour une connexion globale.

Testez votre connexion, puis fermez la fenêtre des paramètres.


Créer un nouveau modèle et un nouveau schéma

Cliquez sur fichier => nouveau modèle dans le menu principal. Un nouveau projet est créé avec une base de données nommée mydb.
Double-cliquez sur l'onglet mydb pour l'ouvrir et saisissez votre vrai nom de base de données.

Enter your database name
Saisissez le nom de votre base de données

Créez vos tables et champs

Fermez l'onglet de la base de données pour revenir à l'écran principal.

A partir de là, vous pouvez créer vos tables, ajouter et paramétrer vos champs en sélectionnant les options appropriées (type de données, clé primaire, non nul, auto-incrément, etc).

Create tables and add fields
Créer des tables et ajouter des champs

Ajouter un nouveau diagramme

Nous allons maintenant créer un diagramme, qui nous permettra ensuite de créer les relations entre les tables en quelques clics.

Fermez votre onglet de tableau, puis double-cliquez sur Ajouter un diagramme dans l'écran principal.
La fenêtre du diagramme s'ouvre alors.

L'arborescence du catalogue sur la gauche montre le schéma de votre base de données avec ses tables.
Faites glisser et déposez les tables que vous souhaitez ajouter au diagramme dans la zone principale.

Notez que MySQL Workbench vous permet de créer plusieurs diagrammes différents dans le même projet, ce qui est recommandé si vous avez de nombreuses tables. Cela vous permettra de regrouper les différentes parties logiques de votre projet et d'avoir une vue plus lisible de chacune d'entre elles.
Vous pouvez également créer un diagramme global qui inclut toutes vos tables, et plusieurs sous-diagrammes.


Créez vos relations (ajoutez des clés étrangères)

Maintenant que votre diagramme est en place, vous pouvez créer les relations entre vos tables.
Les champs de clé étrangère seront créés et nommés automatiquement.

Plusieurs types de relations sont disponibles dans la barre d'outils :

  • 1:1 non identifiant
  • 1:n non identifiant
  • 1:1 identifiant
  • 1:n identifiant

Pour des explications sur les différents types de relations, voir le tutoriel Les différents types de relations dans une base de données MySQL

Pour ajouter une relation entre deux tables :

  • Sélectionnez le type de relation approprié dans la barre d'outils
  • Dans le diagramme, cliquez sur l'en-tête de la table à laquelle vous souhaitez ajouter le champ relationnel.
  • Cliquez ensuite sur l'en-tête du tableau que vous souhaitez lier.
  • Votre relation est générée. Vous pouvez voir la flèche qui relie les deux tables dans le diagramme. Lorsque vous passez la souris sur votre relation, elle est mise en évidence, ainsi que les champs pertinents : clé primaire de la table d'origine, champs relationnels de la table de destination.
Diagram with highlighted relationships
Diagramme avec relations mises en évidence

Exporter votre base de données de Mysql Workbench vers votre serveur

Jusqu'à présent, nous avons travaillé avec MySQL Workbench, mais rien n'a été transféré vers le serveur MySQL.
MySQL Workbench vous permet de synchroniser vos bases de données dans les deux sens, facilement et en toute sécurité. Voici comment exporter des données du logiciel vers votre serveur MySQL :

  1. Dans le menu principal, allez dans base de données => synchroniser le modèle.

  2. Dans la fenêtre qui s'ouvre, vérifiez vos paramètres de connexion et saisissez le nom de votre base de données dans le champ "schéma par défaut", puis cliquez sur suivant.

    À l'étape suivante, vous avez la possibilité d'ignorer certaines synchronisations. Vous pouvez les ignorer et passer à l'étape suivante.

  3. Cliquez sur le bouton suivant jusqu'à ce que vous atteigniez l'écran"Modèle et différence de données" (capture d'écran ci-dessous).
    MySQL Workbench se connectera à votre base de données, récupérera et analysera ses données.

    Model and data difference screen
    Écran de différence de modèles et de données
  4. Dans l'écran"Différence de modèle et de données" :

    • Le modèle est le schéma de la base de données MySQL Workbench.
    • La source est le schéma de la base de données du serveur

    Dans la colonne "mise à jour", vous pouvez double-cliquer sur les flèches pour choisir le sens de la synchronisation pour chaque table.
    Cliquez ensuite sur le bouton suivant.
    Un aperçu des instructions SQL qui seront envoyées à votre serveur s'affichera.

  5. Cliquez sur le bouton Exécuter pour finaliser la synchronisation, et MySQL Workbench fera la magie.

    MySQL Workbench - database sync. final screen
    MySQL Workbench - Synchronisation de la base de données - écran final

En plus de vous permettre de structurer vos bases de données de manière simple et efficace, MySQL Workbench offre bien sûr de nombreuses options et possibilités.
Vous pouvez par exemple exporter des diagrammes dans différents formats (image, pdf), ce qui vous permet de les partager avec vos collègues ou vos clients.
De plus, après avoir sauvegardé votre projet au format .wmb, vous pouvez le recharger et commencer à le synchroniser sur un autre serveur, ce qui vous permet de recréer et même de partager votre base de données en quelques clics.

Combinés à Flyspeed SQL Query, ces deux programmes gratuits constituent, à mon avis, le couple parfait pour travailler avec les bases de données MySQL.

Page principale du tutoriel CRUD PHP