Les Bases de données Définition Composants de la base Communication avec la base Approche relationnelle
Définition Une base de données est un ensemble de fichiers partagés par des utilisateurs et exploité par des programmes. Une base de données contient des informations représentant des objets du monde extérieur ainsi que des relations entre ces objets. /8
Les Bases de données Définition informelle Composants de la base Communication avec la base Approche relationnelle /8
Les composants de la base Les tables Les champs Les clés Les relations 4/8
Les Bases de données Définition informelle Composants de la base Communication avec la base Approche relationnelle 5/8
La communication avec la base Mode client-serveur Réseau informatique Message entre programmes 6/8
Les Bases de données Définition informelle Composants de la base Communication avec la base Approche relationnelle 7/8
Approche relationnelle Les données sont placées dans des tables Une table est composée de: colonnes spécifiant les attributs lignes (ou rangées) spécifiant les valeurs de ces attributs CLIENTS NumClient 00 00 00 Nom Albert Francois Brabo Ville Bruxelles Liege Anvers 8/8
Approche Relationnelle Organisation des données sous forme de tables NumClient Nom Ville Bernard Paris Cruchet Nantes Vannier Le Mans NumPiece Description Cout Table 50 Chaise 0 Armoire 0 4 Lit 00 NumCommande NumClient 57 NumPiece Quantite 5 Des relations existent entre les tables d une BD, ici: Bernard de Paris a commandé chaises à 0 9/8
Clé ou identifiant Une clé primaire détermine de manière unique une rangée d une table. Une clé peut être un simple champ ou plusieurs champs : Numéro de client (table client) Numéro INSEE Numéro de client et date commande (table commande) Une clé étrangère est un champ d'une table qui correspond à une clef primaire d'une autre table. 0/8
Approche Relationnelle Clefs primaires et clefs étrangères NumClient Nom Ville Bernard Paris Cruchet Nantes Vannier Le Mans Clef étrangère Clef primaire Clef primaire NumPiece Description Cout Table 50 Chaise 0 Armoire 0 4 Lit 00 Clef primaire NumCommande NumClient 57 NumPiece Quantite 5 Clef étrangère /8
Un langage pour manipuler les BD SQL /8
Sélection SELECT [DISTINCT ALL] <clause>[<clause> ] FROM <nom_table> [, <nom_table>, ] [WHERE <condition> [AND OR <condition> ]] [GROUP BY <regroupement>[<regroup> ]] [HAVING condition] [ORDER BY liste de colonnes ] /8
villes Sélection SELECT nomville FROM villes ; idville nomville Saint calais Saint calais 4/8
villes Sélection SELECT * FROM villes ; idville nomville Saint calais Saint calais 5/8
villes Sélection SELECT nomville FROM villes WHERE idville= ; idville nomville Saint calais 6/8
Sélection LIKE permet d'utiliser un "joker" afin d'estimer une expression Le joker peut être % pour remplacer une séquence de caractères. Le joker peut être _ pour remplacer un caractère. 7/8
villes Sélection SELECT nomville idville 4 nomville Saint ouen Saint calais FROM villes WHERE nomville LIKE 'saint%'; Saint ouen Saint calais 8/8
villes Langage de Manipulation de Tri idville Données SELECT nomville FROM villes ORDER BY nomville ASC; nomville (LDM) Saint calais Saint calais SELECT nomville FROM villes ORDER BY nomville DESC; Saint calais 9/8
idville villes nomville iddepartement Nantes Jointure SELECT nomville, nomdept FROM villes, departements WHERE numerodept = "7" Nantes Sarthe Sarthe Sarthe departements iddepartement nomdept numerodept Sarthe 7 Mayenne 5 Loire atlantique 44 0/8
idville villes nomville iddepartement Nantes Jointure SELECT nomville, nomdept FROM villes, departements WHERE villes.iddepartement =departements.iddepartement AND numerodept = "7" departements Sarthe Sarthe iddepartement nomdept numerodept Sarthe 7 Mayenne 5 Loire atlantique 44 /8
idville villes nomville iddepartement Nantes Jointure autre syntaxe SELECT nomville, nomdept FROM villes INNER JOIN departements ON villes.iddepartement = departements.iddepartement AND numerodept = "7" Sarthe Sarthe departements iddepartement nomdept numerodept Sarthe 7 Mayenne 5 Loire atlantique 44 /8
idville villes nomville iddepartement Nantes Jointure SELECT nomville, nomdept FROM villes, departements WHERE villes.iddepartement = departements.iddepartement AND numerodept <> "7" departements Nantes Loire atlantique iddepartement nomdept numerodept Sarthe 7 Mayenne 5 Loire atlantique 44 /8
villes idville nomville iddepartement Fonctions Nantes MAX : Fournit la valeur maximale MIN : Fournit la valeur minimale COUNT : Fournit la cardinalité d un ensemble SUM : Somme de toutes les valeurs AVG : Moyenne de toutes les valeurs SELECT COUNT(idVille) AS nbvilles FROM villes WHERE iddepartement= ; nbvilles 4/8
villes idville nomville iddepartement Requêtes imbriqués Nantes SELECT nomville FROM villes WHERE iddepartement IN ( SELECT iddepartement FROM departements WHERE numerodept = "7" ) departements iddeparteme nt nomdept numerode pt Sarthe 7 Mayenne 5 Loire atlantique 44 5/8
Sélection Ajout INSERT INTO NomDeLaTable (colonne,colonne,...) VALUES (valcolonne,valcolonne,...) ; Modification suppression 6/8
Sélection Ajout Modification UPDATE NomDeLaTable SET nomcolonne=valcolonne WHERE condition ; suppression 7/8
Sélection Ajout Modification Suppression DELETE FROM NomDeLaTable WHERE condition ; Attention sans condition cette requête effacera l'ensemble des données de la table. 8/8