Comprendre et lire une base

15 minutes de SQL

Comprendre tables, clés et schémas

Thème : Comprendre et lire une base

Niveau : ECG2

Année : Maths appliquées

Objectif : Comprendre le vocabulaire du modèle relationnel : relation, attribut, domaine, clé primaire, clé étrangère, et savoir lire un schéma simple.

Le modèle relationnel en 5 idées

Une base relationnelle est un ensemble de tables (aussi appelées relations). Chaque table contient des lignes (tuples) et des colonnes (attributs).

  1. Relation / table : une table (ex. ETUDIANTS)
  2. Attribut : une colonne (ex. nom)
  3. Domaine : le type de valeurs autorisées (ex. INTEGER, TEXT)
  4. Clé primaire (PRIMARY KEY) : un attribut (ou groupe) qui identifie de façon unique chaque ligne
  5. Clé étrangère (FOREIGN KEY) : un attribut qui référence la clé primaire d’une autre table

Exemple de schéma

On considère deux tables :

\(\text{ETUDIANTS}(\underline{id},\; nom,\; classe)\) et \(\text{NOTES}(\underline{id},\; id\_etudiant,\; matiere,\; note)\)

Le champ NOTES.id_etudiant est une clé étrangère qui pointe vers ETUDIANTS.id.

À retenir

  • Une clé primaire impose l’unicité des lignes.
  • Une clé étrangère matérialise une relation entre deux tables.
  • Un schéma décrit les tables et leurs attributs (et les liens PK/FK).

Exemples commentés

Exemple 1

On travaille dans une base « boutique ». Avant même d’écrire des requêtes compliquées, on peut déjà afficher le contenu brut d’une table pour repérer ses colonnes et comprendre ce qu’elle stocke.

clients(id_client, nom, ville)

La requête suivante affiche toutes les colonnes de la table clients.

SELECT *
FROM clients;
Exemple 2

Une base relationnelle relie des tables entre elles. Ici, la table commandes référence clients via id_client.

clients(id_client, nom, ville) et commandes(id_commande, id_client, date_commande)

La requête suivante illustre ce lien en affichant, pour chaque commande, le nom du client associé.

SELECT c.nom, co.id_commande, co.date_commande
FROM clients c
INNER JOIN commandes co ON c.id_client = co.id_client;

Accès restreint. Les exercices interactifs et le feedback IA sont réservés aux membres.

Et pour quelques minutes de plus…

Niveau 1 Lire et interpréter

Niveau 2 Compléter une requête

Niveau 3 Écrire une requête

error: Ce contenu est protégé !