Avant de lire
Une clé primaire est :
Avant de lire
Une clé étrangère :
Introduction aux bases de données
Une de données est un ensemble structuré de données, organisé pour permettre un accès, une gestion et une mise à jour efficaces.
Le modèle relationnel (Codd, 1970) organise les données sous forme de tables (ou relations).
Vocabulaire
- Relation (ou table) : ensemble de n-uplets (lignes) partageant le même schéma
- Attribut (ou colonne) : une propriété nommée avec un domaine (type)
- Schéma d'une relation : nom de la relation + liste des attributs et leurs domaines
- n-uplet (ou tuple) : une ligne de la table, un élément de la relation
- Clé primaire : attribut (ou ensemble d'attributs) identifiant de manière unique chaque n-uplet
- Clé étrangère : attribut faisant référence à la clé primaire d'une autre relation
Exemple
Considérons deux relations :
Etudiants
| id | nom | prenom | classe |
|---|
| 1 | Dupont | Marie | MP |
| 2 | Martin | Lucas | PSI |
| 3 | Durand | Sophie | MP* |
Notes| id_note | id_etudiant | matière | note |
|---|
| 1 | 1 | Maths | 16 |
| 2 | 1 | Info | 14 |
| 3 | 2 | Maths | 12 |
Ici,
id est la clé primaire de
Etudiants, et
id_etudiant est une clé étrangère dans
Notes référençant
Etudiants.id.
Contraintes d'intégrité
Contrainte de domaine : les valeurs d'un attribut respectent son type
Contrainte de clé : unicité de la clé primaire
Contrainte référentielle : toute clé étrangère doit correspondre à une clé primaire existante
Contrainte NOT NULL : certains attributs ne peuvent pas être videsAlgèbre relationnelle
L'algèbre relationnelle fournit les opérations formelles sur les relations :
Opérations de base
- Sélection σcondition(R) : filtre les n-uplets vérifiant la condition
- Projection πA1,…,Ak(R) : ne garde que les attributs spécifiés
- Renommage ρA←B(R) : renomme un attribut
Pause : vérifie
L'opération
σcondition(R) en algèbre relationnelle correspond à :
La sélection
σ filtre les lignes selon une condition, ce qui correspond à
SELECT * FROM R WHERE condition.
Opérations ensemblistes
- Union R∪S : n-uplets de R ou S (mêmes schémas)
- Intersection R∩S : n-uplets de R et S
- Différence R∖S : n-uplets de R n'étant pas dans S
Produit cartésien et jointure
- Produit cartésien R×S : toutes les combinaisons de n-uplets
- Jointure R⋈conditionS : produit cartésien filtré par une condition
Jointure naturelle : R⋈S joint sur les attributs de même nom.
Après la lecture
Une clé primaire est :
La clé primaire identifie de manière unique chaque ligne d'une table. Elle ne peut pas contenir de doublons ni de valeurs NULL.
Après la lecture
Une clé étrangère :
Une clé étrangère fait référence à la clé primaire d'une autre table, assurant l'intégrité référentielle.