NSI
NSI

Fiche de révision :
Les Bases de Données

Les bases de données relationnelles sont un pilier de la NSI Terminale. Maîtriser le modèle relationnel, le SQL et la normalisation est indispensable pour réussir le bac.

Génère tes propres fiches de NSI en 10 secondes →

Essayer
NSI
Modèle relationnel
Définition
Une base de données relationnelle est un ensemble de relations (tables). Une relation possède un schéma (nom + attributs + domaines). Chaque ligne est un tuple (enregistrement). Un domaine est l'ensemble des valeurs possibles pour un attribut (ex. INTEGER, VARCHAR(50)). Propriété : pas de doublons dans une relation.
Question probable
Définissez les concepts fondamentaux du modèle relationnel.
Réponse
Une relation = table avec un nom, des attributs (colonnes) et des tuples (lignes). Chaque attribut a un domaine (type). Exemple : Etudiant(id INTEGER, nom VARCHAR(50), age INTEGER). Un tuple est une ligne : (1, "Dupont", 18). L'ordre des tuples n'a pas d'importance (c'est un ensemble). L'ordre des attributs dans le schéma est fixé. Le modèle relationnel a été formalisé par E.F. Codd (1970). Une relation ne peut pas avoir deux tuples identiques.
Mnémotechnique
Relation = Table. Attribut = Colonne. Tuple = Ligne. Domaine = Type. "RATD : Relation-Attribut-Tuple-Domaine." Codd 1970.
1 / 5
NSI
Clés primaires et étrangères
Définition
La clé primaire (PRIMARY KEY) identifie de façon unique chaque tuple d'une relation — non nulle et unique. La clé étrangère (FOREIGN KEY) est un attribut qui référence la clé primaire d'une autre relation. La contrainte d'intégrité référentielle impose que toute valeur de clé étrangère existe dans la table référencée.
Question probable
Expliquez le rôle des clés primaires et étrangères dans une base de données.
Réponse
La clé primaire garantit l'unicité de chaque enregistrement : `id INTEGER PRIMARY KEY`. Elle ne peut pas être NULL. La clé étrangère crée un lien entre tables : `FOREIGN KEY (client_id) REFERENCES Client(id)`. La contrainte référentielle empêche d'insérer une commande avec un client_id inexistant, ou de supprimer un client qui a des commandes (sauf avec CASCADE). Ces contraintes assurent la cohérence des données. Une clé peut être composite (plusieurs attributs forment ensemble la clé primaire).
Mnémotechnique
Clé primaire = unique + non nul = identifiant. Clé étrangère = lien vers une autre table. Intégrité référentielle = cohérence. "Primaire = identité, Étrangère = relation."
2 / 5
NSI
SQL SELECT
Définition
Instruction SQL de base pour interroger une table. Syntaxe : `SELECT colonnes FROM table WHERE condition ORDER BY colonne GROUP BY colonne HAVING condition`. WHERE filtre les lignes avant regroupement. GROUP BY regroupe les lignes. HAVING filtre après regroupement. ORDER BY trie le résultat.
Question probable
Écrivez une requête SQL pour obtenir le nombre de commandes par client, en ne gardant que ceux qui ont plus de 3 commandes.
Réponse
La requête combine GROUP BY et HAVING : ```sql SELECT client_id, COUNT(*) AS nb_commandes FROM Commande GROUP BY client_id HAVING COUNT(*) > 3 ORDER BY nb_commandes DESC; ``` Ordre d'exécution logique : FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY. WHERE s'applique avant le regroupement (sur les lignes), HAVING s'applique après (sur les groupes). COUNT(*) compte toutes les lignes, COUNT(colonne) exclut les NULL.
Mnémotechnique
SELECT-FROM-WHERE-GROUP BY-HAVING-ORDER BY. "Sélectionne For (WHERE) Groupe Have (HAVING) Order." WHERE avant groupement, HAVING après.
3 / 5
NSI
Jointures SQL
Définition
Les jointures combinent des lignes de plusieurs tables selon une condition. INNER JOIN : retourne les lignes qui ont une correspondance dans les deux tables. LEFT JOIN : retourne toutes les lignes de la table gauche, avec NULL si pas de correspondance à droite. Syntaxe : `SELECT * FROM A INNER JOIN B ON A.id = B.a_id`.
Question probable
Quelle est la différence entre INNER JOIN et LEFT JOIN ? Donnez un exemple.
Réponse
INNER JOIN ne retourne que les lignes ayant une correspondance dans les deux tables. LEFT JOIN retourne toutes les lignes de la table de gauche, même sans correspondance à droite (les colonnes de droite seront NULL). Exemple : ```sql -- Clients avec leurs commandes (INNER JOIN : exclut clients sans commande) SELECT Client.nom, Commande.date FROM Client INNER JOIN Commande ON Client.id = Commande.client_id; -- Tous les clients, même sans commande (LEFT JOIN) SELECT Client.nom, Commande.date FROM Client LEFT JOIN Commande ON Client.id = Commande.client_id; ```
Mnémotechnique
INNER JOIN = intersection (correspondance des deux côtés). LEFT JOIN = tout à gauche + correspondance droite (ou NULL). "INNER = les deux, LEFT = gauche toujours."
4 / 5
NSI
Normalisation
Définition
La normalisation élimine les redondances et anomalies dans une base. 1NF : attributs atomiques (pas de listes). 2NF : tout attribut non-clé dépend de toute la clé primaire (pas de dépendances partielles). 3NF : pas de dépendance transitive (un attribut non-clé ne dépend pas d'un autre attribut non-clé).
Question probable
Qu'est-ce que la normalisation d'une base de données ? Expliquez les trois premières formes normales.
Réponse
1NF (Première Forme Normale) : chaque cellule contient une valeur atomique (pas de valeurs multiples dans une case). 2NF : applicable aux clés composites — chaque attribut non-clé dépend de toute la clé, pas seulement d'une partie. Exemple : dans (commande_id, produit_id, nom_produit), nom_produit ne dépend que de produit_id → violation 2NF, il faut une table Produit séparée. 3NF : pas de dépendance transitive. Si A→B et B→C (avec B non-clé), alors C doit être dans sa propre table. La normalisation réduit les anomalies de mise à jour, d'insertion et de suppression.
Mnémotechnique
1NF = atomique. 2NF = dépend de toute la clé (clés composites). 3NF = pas de transitivité. "123 NSI : Atomique, Clé entière, pas Transitive."
5 / 5

Génère tes fiches NSI
en 10 secondes

Colle ton cours de NSI. FicheIA génère tes fiches structurées instantanément.

Générer mes fiches →

3 générations gratuites · Sans inscription

À lire aussi — NSI

Les Algorithmes

Voir la fiche →

Les Structures de Données

Voir la fiche →

Les Réseaux Informatiques

Voir la fiche →
Génère tes fiches NSI →

Gratuit · Sans inscription