• 6 hours
  • Medium

Free online content available in this course.

course.header.alt.is_video

course.header.alt.is_certifying

Got it!

Last updated on 5/13/24

Sélectionnez les données présentes dans votre BDD

Lisez les objets que vous venez de créer

Comment lire la totalité des objets d’une table ?

Vous venez d’ajouter vos premières données dans votre BDD, c’est top ! Mais à quoi cela servirait si vous ne pouvez pas les récupérer par la suite ?

Reprenons l’exemple de l’application Foodly. L’objectif des utilisateurs de cette application est de savoir quelle est la composition des aliments qu’ils envisagent d’acheter. C’est bien beau d’avoir une BDD, mais encore faut-il que l’application puisse y lire les objets.

C’est ce à quoi on va s’attaquer dans ce chapitre... Nous allons voir ensemble les commandes qui vous permettent de récupérer et lire la donnée contenue dans la base de Foodly.

Commençons par une question simple : comment faire pour afficher tous les utilisateurs présents dans votre BDD ?

Comme pour les commandes d’insertion, vous allez devoir indiquer la table dans laquelle vous souhaitez récupérer la donnée, ici “utilisateur”.

Pour la suite, je suppose que vous avez toujours un terminal d'ouvert, avec MySQL lancé, et que vous utilisez bien la base de données foodly. Si cela n'est pas le cas, rendez-vous au chapitre précédent.

Tapez cette commande dans votre terminal :

SELECT * FROM utilisateur;
Voici ce que vous devriez voir apparaître après avoir saisi la commande
Voici ce que vous devriez voir apparaître après avoir saisi la commande

Et là, tada ! MySQL vous affiche la table “utilisateur” sous forme de tableau récapitulatif, avec chaque objet sur sa propre ligne.

Récapitulatif visuel du paragraphe rédigé ci-dessous
La commande SELECT

Décortiquons ensemble la commande que nous venons d’effectuer pour arriver à ce résultat :

  • SELECT, comme nous l’avons vu, indique à MySQL que nous souhaitons récupérer de la donnée ;

  • * indique que l’on souhaite récupérer toutes les colonnes (ou champs) présents dans cette table (ici : id, nom, prenom et email) ;

  • FROM table permet à MySQL de comprendre depuis quelle table nous souhaitons récupérer de la donnée.

Lisez quelques colonnes seulement

C’est super ça, mais je suis réellement obligé de récupérer toutes les colonnes à chaque fois ?

Avant que je vous réponde, tapez cette commande dans votre terminal :

SELECT `nom`, `prenom`, `email` FROM utilisateur;

Que remarquez-vous après l’avoir tapée ? Eh oui, la colonne id n’est plus visible dans le tableau récapitulatif !

Écran du terminal suite à la commande saisie
Écran du terminal suite à la commande saisie

De la même manière qu’on précisait les colonnes que l’on souhaitait ajouter avec INSERT, on peut préciser celles que l’on veut que l’application lise avec SELECT.

Pour cela, il suffit de mentionner les noms de colonnes que l’on souhaite récupérer après le mot clé SELECT, comme dans l’exemple ci-dessus.

Utilisez quelques astuces pour aller plus vite

N'avez-vous rien remarqué d'étrange dans la dernière commande ? Concernant la table ?

J'ai écritutilisateur , sans les backticks (guillemets inversés) ! Étrange, car dans le chapitre précédent je vous proposais de le faire.

En effet, l'utilisation des backticks n'est pas obligatoire. Personnellement, je vous la conseille vivement au début, car elle vous permettra de bien dissocier les tables/colonnes des mots clés SQL commeSELECT  ou  FROM  .

Pour la suite de ce cours, j'utiliserai les deux méthodes.

Deuxième chose que je voulais vous dire : Pensez-vous que je tape utilisateur  à chaque fois ? Non... Car, il est vrai je suis fainéant comme presque tout le monde. Alors comment fais-je ? Et bien je tape  utili  puis j'appuie sur la  touche TAB . MySQL se charge de faire l'auto complétion, c'est à dire qu'il finit mon mot à ma place. Merci MySQL 😃. 

Cela fonctionne avecutilisateur  , mais aussi avec les mots clés comme  SELECT  . 

À vous de jouer !

Je vous propose de lister tous les noms et les calories associées pour chaque aliment présent dans la BDD de Foodly. Comment feriez-vous ?

Je vous laisse essayer. Lorsque vous avez terminé, regardez la correction avec le screencast ci-dessous.

En résumé

  • Les objets d’une table se lisent avec la commandeSELECT FROM.

  • Lors de l’utilisation de cette commande, on mentionne quelles sont les colonnes que l’on veut afficher en les séparant par des virgules.

  • On peut aussi toutes les sélectionner grâce au signe *.

  • On peut utiliser l'auto-complétion pour gagner un temps précieux sur la saisie des commandes.

Et voilà ! Vous savez récupérer et lire la donnée présente dans votre base. Mais imaginons que vous souhaitiez modifier cette donnée. Comment faire ? C’est ce que vous allez voir dans le chapitre suivant.

Example of certificate of achievement
Example of certificate of achievement