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;
Et là, tada ! MySQL vous affiche la table “utilisateur” sous forme de tableau récapitulatif, avec chaque objet sur sa propre ligne.
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 !
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 !
En résumé
Les objets d’une table se lisent avec la commande
SELECT 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.