La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Bases de données : modèlisation et SGBD

Présentations similaires


Présentation au sujet: "Bases de données : modèlisation et SGBD"— Transcription de la présentation:

1 Bases de données : modèlisation et SGBD
Séance 3 B Quinio Quinio

2 BDD : définitions Table ou relation Clé primaire Champ Domaine Tuple
Attribut avec un format Domaine Domaine de validité de certains attributs Tuple Clé externe Quinio

3 BDD : démarche Conception : Développement : Test
modélisation Développement : création, optimisation Test Utilisation et mise à jour Maintenance Gestion Informatique Informatique Gestion Informatique Gestion Informatique Quinio

4 Modèle venant de Merise : MCD
Entité Association 1-n 0-n cardinalités Quinio

5 ELEVE MATIERE APPREND PROFESSEUR ENSEIGNE 1-N Numéro élève
Nom élève Prénom élève Date de naissance Numéro matière Libellé APPREND 0-N 0-N PROFESSEUR ENSEIGNE Numéro professeur Nom professeur Prénom professeur 1-1

6 ELEVE MATIERE APPREND PROFESSEUR ENSEIGNE 1-N Numéro élève
Nom élève Prénom élève Date de naissance APPREND Numéro matière Libellé NOTE 0-N 0-N PROFESSEUR ENSEIGNE Numéro professeur Nom professeur Prénom professeur 1-1

7 ELEVE MATIERE APPREND PROFESSEUR EST AFFECTE ENSEIGNE à CLASSE
Numéro élève Nom élève Prénom élève Date de naissance 1-N APPREND Numéro matière Libellé NOTE 0-N 0-N 1-1 PROFESSEUR EST AFFECTE à Numéro professeur Nom professeur Prénom professeur ENSEIGNE 1-N 1-1 0-N CLASSE Numéro classe Niveau INTERVIENT dans 1-N

8 Modèle relationnel Chaque entité devient une table
Chaque association porteuse (relation n,n) devient une table Chaque association non porteuse (relation 1,n) devient une clé externe dans une table Quinio

9 Elève (Numéro élève, Nom élève, Prénom élève, Date naissance, Numéro classe)
Apprend (Numéro élève, Numéro matière, Note) Matière (Numéro matière, Libellé) Professeur (Numéro professeur, Nom professeur, Prénom professeur, Numéro matière) Classe (Numéro classe, Niveau) Intervient dans (Numéro classe, Numéro professeur) Clef externe Schéma relationnel

10 Normalisation de Codd : point de départ
Liste des attributs Dépendances fonctionnelles Dépendances multivaluées NON vues ici Quinio

11 Normalisation : processus
Normaliser c’est regrouper la liste des attributs en relations - ayant du sens - cohérentes - sans redondance On obtient une série de table Quinio

12 Tout attribut de R contient: une valeur monovaluée et non composée
Normalisation : 1FN Tout attribut de R contient: une valeur monovaluée et non composée Quinio

13 Adresse: Numéro voie, type voie, nom voie, nom ville, code postal
Normalisation : 1FN Exemples : Prénom 1, Prénom 2 Adresse: Numéro voie, type voie, nom voie, nom ville, code postal Quinio

14 R (Numéro élève, Prénoms, Adresse)
Normalisation : 1FN R (Numéro élève, Prénoms, Adresse) n’est pas en 1FN Quinio

15 R normalisée en 1FN R (Numéro élève, Prénom1, Prénom2, Numéro voie, Type voie, Nom voie, Nom ville, Code postal) Quinio

16 Tout attribut non clé de R dépend de la totalité de la clé
Normalisation : 2FN R est en 1FN Tout attribut non clé de R dépend de la totalité de la clé Quinio

17 R (Numéro élève, Numéro matière, note, Nom élève)
Normalisation : 2FN R (Numéro élève, Numéro matière, note, Nom élève) Le Nom ne dépend F. que du Numéro de l’élève Quinio

18 100 005 12 Dupont 001 16 002 08 003 10 200 004 Martin

19 R1 (Numéro élève, Nom élève) R2 (Numéro élève,Numéro matière, Note)
Normalisation : 2FN R n’est pas en 2FN On normalise : R1 (Numéro élève, Nom élève) R2 (Numéro élève,Numéro matière, Note) Quinio

20 Tout attribut de R ne dépend pas de la clé par transitivité
Normalisation : 3FN R est en 2FN Tout attribut de R ne dépend pas de la clé par transitivité Quinio

21 R (Numéro professeur, Nom professeur, Numéro matière, Libellé matière)
Normalisation : 3FN R (Numéro professeur, Nom professeur, Numéro matière, Libellé matière) Libellé matière dépend fonctionnellement de Numéro, professeur par transitivité,à travers le Numéro matière Quinio

22 100 Duval 001 Anglais 101 Farenc 102 Gervais 103 Justin 104 Loliée 002 Espagnol

23 R1 (Numéro professeur, Nom professeur, numéro matière)
On normalise en 3 FN R1 (Numéro professeur, Nom professeur, numéro matière) R2 (Numéro matière, libellé matière) Quinio

24 Normalisation 4FN et 5 FN Non traitées Quinio

25 NORMALISATION : préparation
Numéro élève = A Nom élève = B Prénom élève = C Date naissance = D Numéro matière = E Libellé = F Note = G Numéro professeur = H Nom professeur = I Prénom professeur = J Numéro classe = K Niveau = L A DF B, C, D, K E DF F AE DF G H DF I, J, E K DF L Quinio

26 NORMALISATION : exécution
A DF B, C, D, K E DF F AE DF G H DF I, J, E K DF L DF Elève (A, B, C, D, K) Matière (E, F) Apprend (A, E, G) Professeur (H, I, J, E) Classe (K, L) Quinio

27 Création & manipulation des BDD : requêtes SQL
« Structured Query Language » 1986 Opérateurs de l’algèbre relationnelle Utilisé dans toutes les BD Quinio

28 « LDD » : langage de définition des données
CREATE TABLE élève (numéroélève NUM(6) [ UNIQUE] [NOT NULL] [PRIMARY KEY], nomélève CHAR(30)[NOT NULL], prénomélève CHAR(20) [NOT NULL],annaissance NUM(4)…) Quinio

29 ADD COLUMN coefficient NUM(1) DROP TABLE apprend
« LDD » ALTER TABLE matière ADD COLUMN coefficient NUM(1) DROP TABLE apprend RENAME apprend to notation Quinio

30 ELEVE MATIERE APPREND PROFESSEUR EST AFFECTE ENSEIGNE à CLASSE ALTER
Numéro élève Nom élève Prénom élève Date de naissance 1-N APPREND Numéro matière Libellé coefficient NOTE 0-N 0-N 1-1 PROFESSEUR EST AFFECTE à Numéro professeur Nom professeur Prénom professeur ENSEIGNE 1-N 1-1 0-N CLASSE ALTER Numéro classe Niveau INTERVIENT dans 1-N

31 ELEVE MATIERE PROFESSEUR EST AFFECTE ENSEIGNE à CLASSE DROP INTERVIENT
Numéro élève Nom élève Prénom élève Date de naissance Numéro matière Libellé coefficient 0-N 1-1 PROFESSEUR EST AFFECTE à Numéro professeur Nom professeur Prénom professeur ENSEIGNE 1-N 1-1 0-N CLASSE DROP Numéro classe Niveau INTERVIENT dans 1-N

32 ELEVE MATIERE NOTATION PROFESSEUR EST AFFECTE ENSEIGNE à CLASSE RENAME
Numéro élève Nom élève Prénom élève Date de naissance 1-N NOTATION Numéro matière Libellé coefficient NOTE 0-N 0-N 1-1 PROFESSEUR EST AFFECTE à Numéro professeur Nom professeur Prénom professeur ENSEIGNE 1-N 1-1 0-N CLASSE RENAME Numéro classe Niveau INTERVIENT dans 1-N

33 « Les autorisations d’accès» :
GRANT & REVOKE GRANT privilège ON objet TO public Qui (public) a le droit de faire quoi (privilège) à quoi (objet) Quinio

34 « Les autorisations d’accès» :
GRANT INSERT ON apprend TO professeur GRANT SELECT ON apprend TO PUBLIC REVOKE ALL ON apprend FROM PUBLIC Quinio

35 « LMD » : langage de manipulation des données
SELECT INSERT UPDATE DELETE Quinio

36 SELECT nomélève, prénomélève FROM élève WHERE annaissance = 1994
ORDER BY nomélève Quinio

37 AND élève.numéro-élève = apprend.numéro-élève AND note NOT NULL
SELECT avec jointure SELECT nomélève, prénomélève FROM élève, apprend WHERE annaissance = 1994 AND élève.numéro-élève = apprend.numéro-élève AND note NOT NULL ORDER BY nomélève Quinio

38 INSERT INTO élève (numéroélève, nomélève, prénomélève, annaissance)
VALUES (105, durant, alexis, 2000) Quinio

39 UPDATE UPDATE apprend SET note = 14 WHERE numéroélève = 106
AND numéromatière = 5 Quinio

40 DELETE DELETE FROM élève, apprend WHERE numéroélève = 78 Quinio

41 GROUP BY numéro-client
Les agrégats : SUM SELECT SUM (montant) FROM commande GROUP BY numéro-client Quinio

42 AVG SELECT nom-élève FROM élève SELECT AVG (note) FROM apprend
GROUP BY numéro-élève Quinio

43 MIN ou MAX SELECT MAX(note) FROM apprend WHERE numéro-élève = 105
Quinio

44 SELECT COUNT FROM apprend WHERE numéro-élève = 102
Quinio


Télécharger ppt "Bases de données : modèlisation et SGBD"

Présentations similaires


Annonces Google