MySQL

L'environnement de travail

MySQL est l'un des systèmes de gestion de base de données les plus utilisés au monde dans la réalisation d'applications Web, autant par le grand public que par des professionnels. Fonctionnant sur la plupart des systèmes d'exploitation actuels, les bases de données MySQL sont accessibles par divers langages de programmation dont PHP ou Python. Le couple PHP/MySQL est néanmoins très utilisé par les sites webs et proposé par la majorité des hébergeurs webs. MySQL fait alors partie du trio de développement web xAMP comprenant un serveur web Apache, un système de gestion de bases de données MySQL ainsi qu'un interpréteur pour le langage de script PHP. Le "x" de xAMP est généralement remplacé par le système d'exploitation visé: LAMP pour Linux, WAMP pour Windows et MAMP pour Macintosh. En outre, il existe des versions portables du package xAMP comme EasyPHP.

EasyPHP (sur Windows) et MAMP (sur Macintosh) sont des plateformes de développement Web permettant de faire fonctionner localement (sans se connecter à un serveur externe) des scripts PHP. Il s'agit d'environnements comprenant deux serveurs (un serveur web Apache et un serveur de bases de données MySQL), un interpréteur de script PHP ainsi qu'un logiciel permettant d'administrer des bases de données MySQL: phpMyAdmin. L'un des avantages d'EasyPHP réside dans sa capacité à être utilisé comme une application portable, c'est-à-dire lancé sur une clé USB.

phpMyAdmin est une application Web de gestion pour les systèmes de gestion de base de données MySQL, écrite en PHP. Il s'agit de l'une des plus célèbres interfaces graphiques pour gérer une base de données MySQL sur un serveur PHP. Cette interface permet d'exécuter très facilement et sans grandes connaissances dans le domaine des bases de données, de nombreuses requêtes comme la création de tables, l'insertion, la mise à jour, la suppression de données ou encore la modification structurelle d'une base de données. phpMyAdmin est également très pratique pour sauvegarder une base de données sous forme de fichiers et ainsi facilement transférer ses données. En outre, l'interface accepte la formulation de requêtes directement en langage SQL, permettant ainsi de tester ses requêtes lors de la création d'un site et ainsi de gagner un temps précieux.

mysql2.gif

Système de gestion de bases de données MySQL

mysql3.jpg

Environnement de développement EasyPHP

mysql4.gif

Gestionnaire de base de données phpMyAdmin

Le but de cette section est d'implanter les tables de la base de données Entreprise étudiée jusqu'à présent dans un système de gestion de base de donnée MySQL à l'aide de l'interface graphique phpMyAdmin. A ce dessein, il est nécessaire dans un premier temps d'installer les logiciels nécessaires

Si vous travaillez sur Windows, commencez par télécharger l'environnement EasyPHP Devserver sur votre disque ou sur une clé USB. Le logo de EasyPHP apparaîtra alors dans la zone de notifications de votre bureau en bas à droite, à côté de l'horloge. Après avoir cliqué sur l'icône EasyPHP avec le bouton droit de la souris, sélectionnez le lien «Open Dashboard». Votre navigateur va ouvrir la page de gestion des serveurs à l'adresse http://127.0.0.1:1111/index.php ou http://localhost:1111/index.php. D'ici, il vous sera possible d'allumer les serveurs HTTP et MySQL puis d'accéder à «phpMyAdmin» via un simple clic sur les lien proposé.

Si vous travaillez sur Mac OS X, commencez par télécharger l'environnement MAMP et installez-le dans votre dossier d'applications. Cliquez sur l'icône de l'application MAMP puis démarrez les serveurs Apache et MySQL en cliquant sur le bouton start. Une fenêtre s'ouvrira alors dans votre navigateur vous permettant de d'ouvrir l'application «phpMyAdmin» par simple clic du lien correspondant dans le menu tools.

phpMyAdmin vous permettra de gérer les tables de vos différentes bases de données à l'aide d'une interface graphique. Tous vos ordres seront traduits en instruction SQL pour l'exécution. En cas de besoin, phpMyAdmin vous offrira aussi la possibilité de programmer directement en SQL, ce qui s'avérera très utile pour créer des requêtes complexes. Les objets d'une base de données MySQL sont gérés dans les onglets présents à l'ouverture de l'interface phpMyAdmin, comme le montre la figure suivante:

mysql5.jpg

Fenêtre d'accueil de phpMyAdmin

La partie 1 (à gauche) vous permet d'administrer les bases de données existantes sur votre ordinateur. Le nombre entre parenthèses est le nombre de tables présentes dans chaque base. La partie 2 (à droite) permet de créer une nouvelle base de données ou de gérer les tables existantes si elles sont sélectionnées à gauche.

Création d'une base de données MySQL

Commençons par créer la base de données Entreprise qui contiendra les tables EMPLOYE, PROJET, DEPARTEMENT et APPARTENANCE. A ce dessein, utilisez le formulaire de droite, entrez-y le nom de la base de données à créer puis cliquez sur le bouton Créer. L'application vous indique si la base de données a pu être créée:

mysql6.jpg

La base de données Entreprise a été créée, vide

En plaçant un 0 entre parenthèses dans la partie gauche de l'écran, phpMyAdmin vous indique qu'aucune table n'a été trouvée dans la base de données créée. Nous allons donc, dans un premier temps, créer les tables de notre base de données. A ce dessein, entrez le nom de la table EMPLOYE ainsi que le nombre de champs, à savoir 5, comme indiqué sur la figure suivante:

mysql7.jpg

Création d'une nouvelle table en précisant le nombre de champs nécessaires

En cliquant sur «Exécuter», vous ne créez pas immédiatement la nouvelle table: il faut, en effet, préciser pour chaque attribut de votre table son nom, son type de données ainsi que différentes informations concernant l'attribut présentées sous la forme de différents champs:

mysql8.jpg

Préciser les propriétés de chaque attribut de la table à créer

Les champs les plus importants sont les suivants:

Une fois les champs complétés, choisissez le moteur de stockage InnoDB puis cliquez sur le bouton «Sauvegarder»: votre table est créée !

mysql12.jpg

Confirmation de la création d'une nouvelle table

Il est vital que chaque table de votre base de données possède sa propre clé primaire afin d'accélérer les performances de recherches du SGBD lors des requêtes faites ultérieurement. Il est donc conseillé de prendre le réflexe de donner l'index PRIMARY à l'attribut jouant le rôle de clé d'identification lors de la création de la table, ce qui aura pour effet d'en créer une clé primaire. Vous en profiterez également pour cocher la case AUTO_INCREMENT afin que cet attribut gère lui-même les nouvelles valeurs automatiquement (1, 2, 3, 4,...).

La déclaration d'un attribut comme clé primaire ou la modification de certaines informations concernant les attributs d'une table peuvent être faites une fois la table créée grâce aux boutons suivants:

Cliquez sur le bouton images/mysql13.png situé sur la ligne de l'attribut EmployeID afin de le déclarer clé primaire de la table puis indiquez au SGBD que l'attribut est auto-incrémenté. Vous devriez obtenir le résultat suivant dans lequel vous constaterez que EmployeID est maintenant souligné ou suivi de l'icône images/mysql13.png:

mysql18.jpg

Déclaration de EmployeID comme clé primaire auto-incrémentée de la table EMPLOYE

En cliquant sur le bouton mysql27.png, vous pourrez également obtenir une version imprimable de la structure de table créée.

A vous de jouer !

En vous basant sur le schéma relationnel ci-dessous de la base de données Entreprise, créez les tables PROJET, DEPARTEMENT et AFFECTATION à l'aide de phpMyAdmin en attribuant à chaque table ses attributs avec leur type et en déclarant correctement les clés primaires de chaque table.

mysql19.jpg

|