Cours Algèbre Relationnel
Cours Algèbre Relationnel
Cours Algèbre Relationnel
Langage abstrait, avec des opérations qui travaillent sur une (ou
plusieurs) relation(s) pour définir une nouvelle relation sans changer la (ou
Une table est une relation (au sens mathématique) qui a un nom
Dom(Nom) =
Instance de relation
Emp Nom Num_Cte Rue
Cardinalité(Emp) = 3
Dom(Num_Cte) = les entiers naturels (infini)
Ce sont les opérateurs les plus simples, ils permettent de produire une nouvelle relation à partir
d’une relation
Ces opérateurs permettent de produire d’une nouvelle relation à partir de deux relations de même
degré et de même domaine
Ils permettent de produire d’une nouvelle relation à partir de deux ou plusieurs autres relations
Les opérateurs Unaires: Sélection
𝝅 𝑵𝒐𝒎 𝑷𝒆𝒓𝒔𝒐𝒏𝒏𝒆
Les opérateurs Unaires: Projection
𝝅 𝑵𝒐𝒎 𝑷𝒆𝒓𝒔𝒐𝒏𝒏𝒆
Les opérateurs binaires ensemblistes: Union
la note :
R1 U R2
Les opérateurs binaires ensemblistes: Union
𝐑 = 𝐑𝟏 ∩ 𝑹𝟐 𝒐𝒖 𝑹 = 𝑰𝑵𝑻𝑬𝑹𝑺𝑬𝑪𝑻(𝑹𝟏, 𝑹𝟐)
Les opérateurs binaires ensemblistes: Intersection
Exemple d’intersection: 𝐑 = 𝐑𝟏 ∩ 𝑹𝟐
Les opérateurs binaires ensemblistes: Intersection
Exemple d’intersection: 𝐑 = 𝐑𝟏 ∩ 𝑹𝟐
Les opérateurs binaires ensemblistes: Différence
note 𝐑𝟏 − 𝑹𝟐
𝐑 = 𝐑𝟏 − 𝑹𝟐 𝒐𝒖 𝑹 = 𝑴𝑰𝑵𝑼𝑺(𝑹𝟏, 𝑹𝟐)
Les opérateurs binaires ensemblistes: Différence
Exemple de différence: 𝐑 = 𝐑𝟏 − 𝑹𝟐
Les opérateurs binaires ensemblistes: Différence
Exemple de différence: 𝐑 = 𝐑𝟏 − 𝑹𝟐
Les opérateurs binaires : Produit Cartésien
note 𝐑𝟏 𝒙 𝑹𝟐
𝐑 = 𝐑𝟏 𝒙 𝑹𝟐 𝒐𝒖 𝑹 = 𝑷𝒓𝒐𝒅𝒖𝒄𝒕(𝑹𝟏, 𝑹𝟐)
Les opérateurs binaires : Produit Cartésien
𝐑 = 𝐑𝟏 ⨝ 𝑹𝟐 𝒐𝒖 𝑹 = 𝑱𝒐𝒊𝒏𝒕(𝑹𝟏, 𝑹𝟐)
Les opérateurs binaires : Jointure
La division est une opération portant sur deux relations R1 et R2, telles que
le schéma de R2 est strictement inclus dans celui de R1, qui génère une
𝐑 = 𝐑𝟏 ÷ 𝑹𝟐 𝒐𝒖 𝑹 = 𝒅𝒊𝒗𝒊𝒔𝒊𝒐𝒏(𝑹𝟏, 𝑹𝟐)
Les opérateurs binaires : Division
Une relation possède une et une seule clé primaire mais peut
présenter plusieurs clés candidates qui pourraient jouer ce rôle
Valeur nulle
Une clé étrangère est une clé primaire dans une autre relation
Exemple:
Vol (num_vol, num_pilote, num_trajet, num_avion, date)
Pilote (num_pilote, nom_pilote, ad_pilote)
Contrainte d’intégrité de référence
Lors de l’insertion d’un tuple dans la relation Vol, le système doit vérifier que la
valeur de num_pilote correspond bien à une valeur de num_pilote dans la
relation pilote
Lors de la suppression d’un tuple dans pilote, 4 types de contrôle peuvent être
faits:
Toute comparaison d’attribut n’est acceptée que si ces attributs sont définis sur
le même domaine.
- de domaine
- d’entité
- de référence