32
Langage de manipulation de données Ensemble de commandes permettant : modifier la base : ajout, modification et suppression interroger la base ex : donner le nom des personnes qui habitent à Paris Trois grandes classes de LMD relationnels : Les langages algébriques : Les langages issus de l’algèbre relationnelle de Codd : SQL (Structured Query Language) ex : select NOM from PERSONNEL where VILLE=‘ PARIS’ Langages prédicatifs :

Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Embed Size (px)

Citation preview

Page 1: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Langage de manipulation de données

Ensemble de commandes permettant :– modifier la base : ajout, modification et suppression– interroger la base

• ex : donner le nom des personnes qui habitent à Paris

Trois grandes classes de LMD relationnels :– Les langages algébriques : – Les langages issus de l’algèbre relationnelle de

Codd :SQL (Structured Query Language)

• ex : select NOM from PERSONNEL where VILLE=‘ PARIS’

– Langages prédicatifs :Systèmes Ingres QUEL (QUEry Language)Access QBE (Query By Example)

Page 2: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Opérateurs d’extraction de donnéesSélection d’un sous ensemble d’attributs :

projectionSélection de n-uplets vérifiant un critère :

sélectionAssociation de plusieurs relations : jointureCombinaison de relations de même schéma :

booléensConstruction de toutes les combinaisons de n-

uplets entre deux relations : produitExtraction des … : division

Page 3: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

La projection

La projection d’une relations P1 de schéma R1(A1..An) sur les attributs Ai1,Ai2,…Aip (avec ij ≠ik et p<n) est une relation P2 de schéma R2(Ai1..Aip) dont on a supprimé les tuples en double.

Opérateur d’algèbre relationnelle :µ Ai1..Ain

Symbole graphique :Remarque :

– Filtrages des colonnes– Utilisé pour supprimer les tuples en double (par

exemple après une union)

Page 4: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Exemple de projectionRequête type :

– Quels sont les villes de résidence des personnes de la table P1

VILLE

P2 = µville(P1)

LyonLyonDupontDupont34573457

ParisParisDurandDurand34253425

ParisParisDupondDupond21402140

VILLEVILLENOMNOMIDID

P1

LyonLyon

ParisParis

VILLEVILLE

P2

Page 5: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

La restriction ou sélection

La restriction d’une relations P1 de schéma R1 par une qualification Q est une relation P2 de même schéma dont les tuples sont ceux satisfaisant Q.

Opérateur d’algèbre relationnelle : Symbole graphique : Remarque :

– Filtrage des données– Critères Q :

• Égalité entre un attribut et une valeur données VILLE="Paris".• Égalité entre deux attributs de la table VILLE1 = VILLE2.• Inégalité Age<20, Somme>=150.• Différence.

Page 6: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Exemple de sélectionRequête type :

– Sélectionner tous les individus habitant à Paris.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DURAND PARIS3457 PIERRE ORLY

VILLE=‘PARIS’

P2 = VILLE=‘PARIS’(P1)P2

ID NOM VILLE2140 DUPONT PARIS3425 DURAND PARIS

Page 7: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Opérateur booléen UNIONL’union de deux relations P1 et P2 de même

schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1, à P2 ou aux deux.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

2140 DUPONT PARIS3457 PIERRE ORLY4286 DUBOIS NOISY1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

U

P3 = P1 U P2

!Les doublons sont éliminés par définition

Page 8: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

Opérateur booléen INTERSECTION

L’intersection de deux relations P1 et P2 de même schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1 et à P2.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

3425 DUPONT CHAMPS

P3 = P1 P2

Page 9: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :

/

Opérateurs booléen DIFFERENCE

La différence de deux relations P1 et P2 de même schéma R est une relation de même schéma R contenant tous les tuples appartenant à P1 et n’appartenant pas à P2.

P1ID NOM VILLE

2140 DUPONT PARIS3425 DUPONT CHAMPS3457 PIERRE ORLY

P2ID NOM VILLE

1123 DURAND PARIS3425 DUPONT CHAMPS4286 DUBOIS NOISY

P3ID NOM VILLE

2140DUPONT PARIS3457PIERRE ORLY

P3 = P1 / P2

P1 / P2 P2 / P1!

Page 10: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 11: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 12: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 13: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 14: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 15: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 16: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 17: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 18: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 19: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 20: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 21: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 22: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 23: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 24: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 25: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 26: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 27: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 28: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 29: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 30: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 31: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :
Page 32: Langage de manipulation de données Ensemble de commandes permettant : – modifier la base : ajout, modification et suppression – interroger la base ex :