Upload
bernetta-perrin
View
151
Download
7
Embed Size (px)
Citation preview
La base de données
La base de données
Le schéma de la base de données
Le langage de requête SQL
La base de données
Le schéma de la base de données
Exemple développéGestion des réclamations clients dans une entreprise d’électroménager :
CLIENT (Numcli, Nomcli, Prenomcli, Adrcli, Villecli, Cpcli)PRODUIT (Refprod, Desiprod, Marqueprod, Prixprod)RECLAMATION (Coderec, Daterec, Raisonrec, #Numcli, #Refprod)
La base de données : vocabulaire Les TABLES correspondent aux
relations
Les CHAMPS correspondent aux attributs (= colonne)
Les ENREGISTREMENTS correspondent aux données saisies (= ligne)
La base de données : les tables
numcli nomcli prenomcli adrcli cpcli villecli
10003 ANDRE Thomas 10 rue courtalon 75014 PARIS
102778 BULI Patrice 20 cours Vuitton 69006 LYON
124682 VERIN Didier 10 rue Schuman 75002 PARIS
125941 GADRON Dominique 10 allée des Tilleuls 69300 CALUIRE
140621 BALOIR Claude 10 place des cordeliers 75008 PARIS
143025 BLANC Cécile 12 rue Cortier 89000 AUXERRE
147963 DOLMEN Christian 145 cous Lafayette 75015 PARIS
148254 JORET Geneviève 10 rue des provinces 69005 LYON
150763 MALOT Berthe 39 rue denfert rochereau 75014 PARIS
157269 OLIVE Virginie 20 rue Berliet 21000 DIJON
164025 PALO Nicole 10 rue de la Préfecture 75001 PARIS
172436 MARIE Olivier 43 rue de l'église 06000 NICE
172596 BELO Vincent 15 rue des chèvrefeuilles 75002 PARIS
175298 GIDOT Sylvie 20 rue de Melun 75013 PARIS
175496 FAVRE Caroline 61 rue du calvaire 10000 TROYES
240573 VIAR Stéphane 68 rue Anatole France 75016 PARIS
279246 MAIRE René 28 rue de l'Orme 69003 LYON
Table CLIENT
La base de données : les champs
numcli nomcli prenomcli adrcli cpcli villecli
10003 ANDRE Thomas 10 rue courtalon 75014 PARIS
102778 BULI Patrice 20 cours Vuitton 69006 LYON
124682 VERIN Didier 10 rue Schuman 75002 PARIS
125941 GADRON Dominique 10 allée des Tilleuls 69300 CALUIRE
Champs de la table CLIENT
La base de données : les enregistrements
numcli nomcli prenomcli adrcli cpcli villecli
10003 ANDRE Thomas 10 rue courtalon 75014 PARIS
102778 BULI Patrice 20 cours Vuitton 69006 LYON
124682 VERIN Didier 10 rue Schuman 75002 PARIS
125941 GADRON Dominique 10 allée des Tilleuls 69300 CALUIRE
140621 BALOIR Claude 10 place des cordeliers 75008 PARIS
143025 BLANC Cécile 12 rue Cortier 89000 AUXERRE
147963 DOLMEN Christian 145 cous Lafayette 75015 PARIS
148254 JORET Geneviève 10 rue des provinces 69005 LYON
150763 MALOT Berthe 39 rue denfert rochereau 75014 PARIS
157269 OLIVE Virginie 20 rue Berliet 21000 DIJON
164025 PALO Nicole 10 rue de la Préfecture 75001 PARIS
172436 MARIE Olivier 43 rue de l'église 06000 NICE
172596 BELO Vincent 15 rue des chèvrefeuilles 75002 PARIS
175298 GIDOT Sylvie 20 rue de Melun 75013 PARIS
175496 FAVRE Caroline 61 rue du calvaire 10000 TROYES
240573 VIAR Stéphane 68 rue Anatole France 75016 PARIS
279246 MAIRE René 28 rue de l'Orme 69003 LYON
Un enregistrement de la table CLIENT
La base de données : les contraintes d’intégrité Contrainte de DOMAINE
Contrainte de RELATION
Contrainte de REFERENCE
La base de données : contrainte de domaine
La base de données : contrainte de relation
La base de données : contrainte de référencerefprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
???
La base de données : prise en compte des contraintes d’intégrité
Saisir en premier les données des tables qui ne contiennent pas de clé étrangère
Bien définir les types de données lors de la création de la structure
Cocher l’application de l’intégrité référentielle lors de la mise en place des liaisons
La base de données
Le langage de requête SQL
Le langage de requête SQL
Trois types d’opérations :
Projection : projette les champs sélectionnés
Restriction : projette les enregistrements demandés
Tri : ordonne les enregistrements demandés selon un critère
Le langage de requête SQL : la projection
refprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
Projection :
- refprod
- desiprod
refprod
CG2054
CG4210
CG4921
CG5327
CS1572
CS547
CS7814
LL1043
LL1050
LL450
LV2050
LV5790
RF147
RF2047
RF243
desiprod
CONGELATEUR
CONGELATEUR
CONGELATEUR
CONGELATEUR
CUISINIERE
CUISINIERE
CUISINIERE
LAVE LINGE
LAVE LINGE
LAVE LINGE
LAVE VAISSELLE
LAVE VAISSELLE
REFRIGERATEUR
REFRIGERATEUR
REFRIGERATEUR
Le langage de requête SQL : la restriction
refprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
Restriction :seulement les congélateurs
refprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
Le langage de requête SQL : le tri
refprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
Tri par
ordre
de prix
refprod desiprod marqueprod prixprod
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG2054 CONGELATEUR MOULINEX 245,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
Le langage de requête SQL : la jointure
Liste des clients ayant fait uneréclamation pour une cuisinière :
Projection du nom des clients Restriction sur la désignation du
produit
numcli nomcli prenomcli adrcli cpcli villecli
10003 ANDRE Thomas 10 rue courtalon 75014 PARIS
102778 BULI Patrice 20 cours Vuitton 69006 LYON
124682 VERIN Didier 10 rue Schuman 75002 PARIS
125941 GADRON Dominique 10 allée des Tilleuls 69300 CALUIRE
140621 BALOIR Claude 10 place des cordeliers 75008 PARIS
143025 BLANC Cécile 12 rue Cortier 89000 AUXERRE
147963 DOLMEN Christian 145 cous Lafayette 75015 PARIS
148254 JORET Geneviève 10 rue des provinces 69005 LYON
150763 MALOT Berthe 39 rue denfert rochereau 75014 PARIS
157269 OLIVE Virginie 20 rue Berliet 21000 DIJON
164025 PALO Nicole 10 rue de la Préfecture 75001 PARIS
172436 MARIE Olivier 43 rue de l'église 06000 NICE
172596 BELO Vincent 15 rue des chèvrefeuilles 75002 PARIS
175298 GIDOT Sylvie 20 rue de Melun 75013 PARIS
175496 FAVRE Caroline 61 rue du calvaire 10000 TROYES
240573 VIAR Stéphane 68 rue Anatole France 75016 PARIS
279246 MAIRE René 28 rue de l'Orme 69003 LYON
279346 TAR Delphine 8 rue de Marseille 75013 PARIS
307951 FOURNE Pascal 2 rue des Marroniers 18000 BOURGES
307952 TIRU Anne 10 cours Lafayette 75016 PARIS
357142 ARTI Mireille 10 rue Bossuet 21000 DIJON
402218 VOLO Sophie 20 impasse Potet 75019 PARIS
421072 FUTIR Gérard 25 rue Gallieni 10300 STE SAVINE
427852 ELIA Bernard 105 avenue Charlemagne 75020 PARIS
517365 MOUR Arnaud 14 place Jules Ferry 89000 AUXERRE
527369 YZER Jean 20 Cours Vuitton 75007 PARIS
refprod desiprod marqueprod prixprod
CG2054 CONGELATEUR MOULINEX 245,00 €
CG4210 CONGELATEUR BRANDT 229,00 €
CG4921 CONGELATEUR MOULINEX 200,00 €
CG5327 CONGELATEUR MIELE 215,00 €
CS1572 CUISINIERE MOULINEX 790,00 €
CS547 CUISINIERE ARTHUR MARTIN 950,00 €
CS7814 CUISINIERE ROSIERES 900,00 €
LL1043 LAVE LINGE BRANDT 610,00 €
LL1050 LAVE LINGE MOULINEX 520,00 €
LL450 LAVE LINGE ARTHUR MARTIN 250,00 €
LV2050 LAVE VAISSELLE BRANDT 1 035,00 €
LV5790 LAVE VAISSELLE MIELE 1 050,00 €
RF147 REFRIGERATEUR MIELE 750,00 €
RF2047 REFRIGERATEUR BRANDT 1 020,00 €
RF243 REFRIGERATEUR WHIRLPOOL 990,00 €
Aucun lien entre les tables
nomcli desiprod
ANDRE CONGELATEUR
ANDRE CONGELATEUR
ANDRE CONGELATEUR
ANDRE CONGELATEUR
BULI CONGELATEUR
BULI CONGELATEUR
BULI CONGELATEUR
BULI CONGELATEUR
VERIN CONGELATEUR
VERIN CONGELATEUR
VERIN CONGELATEUR
VERIN CONGELATEUR
GADRON CONGELATEUR
GADRON CONGELATEUR
GADRON CONGELATEUR
GADRON CONGELATEUR
BALOIR CONGELATEUR
BALOIR CONGELATEUR
BALOIR CONGELATEUR
BALOIR CONGELATEUR
Le lien se fait grâce à la relation RECLAMATION
Jointure : lien entre les tables
nomcli desiprod
VOLO CONGELATEUR
MOUR CONGELATEUR
ARTI CONGELATEUR
BALOIR CONGELATEUR
BULI CONGELATEUR
VIAR CONGELATEUR
PALO CONGELATEUR
Le langage de requête SQL : les opérateurs Projection : SELECT Restriction : WHERE / AND Tri : ORDER BY … ASC / DESC Jointure : WHERE
Le langage de requête SQL / structure des requêtes
SELECT champ1, champ2FROM table1WHERE champ1 = « … » ORDER BY champ2 ASC ;
Le langage de requête SQL / structure des requêtes
Exemple : liste des clients habitant Paris par ordre alphabétique
SELECT nomcliFROM clientWHERE villecli = « Paris » ORDER BY nomcli ASC ;
Le langage de requête SQL / structure des requêtes
SELECT champ1, champ2FROM table1, table2WHEREtable1.cléprimaire=table2.cléétra
ngèreAND champ1 = « … » ;
Le langage de requête SQL / structure des requêtes
Exemple : nom des clients ayant fait une réclamation pour un lave linge
SELECT nomcliFROM client, produit, réclamationWHERE client.numcli = réclamation.numcliAND produit.refprod = réclamation.refprodAND desiprod = « lave linge » ;