Aller au contenu
studuel

NSI · Terminale · Bases de données

Structure de base de données

Sans contraintes, ce n’est qu’un tableur.

En bref

Une fois le modèle décidé, il faut créer les tables, choisir les types, poser les contraintes — et savoir comment les données seront réellement rangées.

Les types de données

TypeCe qu’il accueille
INTEGERLes entiers
REAL (ou FLOAT)Les décimaux
TEXT (ou VARCHAR)Les chaînes
DATELes dates
BOOLEANVrai ou faux

Le type est une contrainte : il interdit d’écrire une chaîne dans une colonne numérique, et il conditionne les opérations possibles. Additionner deux nombres stockés en TEXT n’a pas de sens.

Créer une table

CREATE TABLE eleve (id INTEGER PRIMARY KEY, nom TEXT NOT NULL, classe_id INTEGER REFERENCES classe(id))

Mot-cléCe qu’il impose
PRIMARY KEYIdentifiant unique, jamais nul
NOT NULLLa valeur est obligatoire
UNIQUEPas deux fois la même valeur
DEFAULTUne valeur par défaut si rien n’est fourni
CHECKUne condition à respecter
REFERENCESUne clé étrangère vers une autre table

Le piège NULL

NULL n’est ni zéro ni la chaîne vide : c’est l’absence de valeur. Toute comparaison avec NULL renvoie « inconnu » — y compris NULL = NULL.

On teste avec IS NULL et IS NOT NULL, jamais avec l’égalité. Piège récurrent des sujets.

La normalisation

Décomposer les tables pour éliminer la redondance. Le programme s’en tient à l’essentiel : chaque information stockée une seule fois, chaque table décrivant une seule entité. Une table qui mêle élève et classe est à découper.

Les index

Un index est une structure auxiliaire — souvent un arbre équilibré — qui accélère la recherche sur une colonne.

Ce qu’il apporteCe qu’il coûte
La recherche passe d’un coût linéaire à logarithmiqueDe l’espace disque
—Un ralentissement des insertions : l’index doit être tenu à jour

On indexe les colonnes très souvent interrogées, pas toutes. La clé primaire est indexée automatiquement.

Les vues

Une vue est une requête enregistrée sous un nom, utilisable comme une table. Elle simplifie les requêtes complexes et restreint l’accès : on donne accès à une vue qui ne montre que certaines colonnes plutôt qu’à la table entière.

Les droits

GRANT attribue un droit — SELECT, INSERT, UPDATE, DELETE — et REVOKE le retire. Le principe de moindre privilège s’applique : une application qui ne fait que lire ne doit disposer que du droit de lecture.

Un schéma sans contraintes n’est pas un schéma : c’est un tableur. Ce sont les contraintes qui empêchent une base d’accumuler des données fausses.

Teste-toi

6 questions pour vérifier

Touche une réponse : la correction s’affiche tout de suite.

  1. 1.Que signifie NULL dans une base de données ?

  2. 2.Comment teste-t-on l’absence de valeur en SQL ?

  3. 3.À quoi sert un index sur une colonne ?

  4. 4.Quel est le prix d’un index ?

  5. 5.Qu’est-ce qu’une vue ?

  6. 6.Quelle commande SQL attribue un droit à un utilisateur ?

0 / 6 questions

Dans l’app, ce chapitre a son quiz complet, chronométré, et tes erreurs reviennent au bon moment pour ne plus les refaire.

Continuer dans l’app
Aperçu flouté de la fiche de révision

La fiche de révision, sur une page

Tout « Structure d’une base » sur une seule page A4 illustrée : l’essentiel, les pièges et un mini-test. Elle se débloque dans l’app avec des gemmes — et ton compte gratuit en offre assez pour tes trois premières fiches.

Débloquer la fiche dans l’app

Dans le même thème

NSI en terminale : passe à l’entraînement.

Le quiz complet, les exercices corrigés, les duels contre des élèves de ton niveau et un coach IA qui t’explique ce qui bloque.

Commencer gratuitement