Vous êtes sur la page 1sur 5

Pierre Parrend Bases de Donnes Avances, Module A

1 1 Bases de Donnes Avances Module B IUT Lumire, License CE-STAT 2006-2007 Pierre Parrend

Normalisation de Schmas Relationnels Corrections Types


Vous trouverez ici quelques corrigs types de normalisation de schmas relationnels. Les exemples sont traits pour valider la conformit des tables la forme Normale 5. Les tables exemples sont les suivantes: exercice 2.4, table 7 exercice 2.4, table 8 exercice 2.4, table 9 Mthode de normalisation: 1) Vrifier la conformit de la table la 1NF Critre: aucun attribut n'a une valeur complexe (c'est dire ne contient plusieurs informations) 2) Identifier les cls candidates 3) Identifier TOUTES les dpendances fonctionnelles 4) Vrifier la conformit de la table la 2NF Critre: aucun attribut hors cl candidate n'est dependant fonctionnellement d'une sous-partie de la cl candidate (pour une cl candidate) 5) Vrifier la conformit de la table la 3NF Critre: toutes les dpendances fonctionnelles ont leur origine dans la cl candidate (pour une cl candidate) 6) Vrifier la conformit de la table la BCNF Critre: aucune dpendance fonctionnelle l'intrieur de la cl candidate (pour toutes les cls candidates) 7) Vrifier la conformit de la table la 4NF Critre: pas de co-existance de plusieurs dpendances multi-values indpendantes dans le schma relationnel 8) Vrifier la conformit de la table la 5NF Critre: pas de co-existance de plusieurs dpendances multi-values dpendantes smantiquement dans le schma relationnel

CE-STAT, IUT Lumire 1

2006-2007

Pierre Parrend Bases de Donnes Avances, Module A


Exercice 2.4, table 7 La table considre est: Enseignement2 ( cours, joursCours, nomProfesseur, salaireProfesseur ); Chaque cours n'a qu'un enseignant et n'a lieu qu'une fois par semaine. Vrifier la conformit de la table la 1NF nomProfesseur: doit tre dcompos en nomProfesseur, prnomProfesseur La table Enseignement2 modifie est donc: Enseignement2 ( cours, joursCours, nomProfesseur, prnomProfesseur, salaireProfesseur ); Identifier les cls candidates La cl candidate est: (cours, nomProfesseur, prnomProfesseur) Identifier TOUTES les dpendances fonctionnelles Les dpendances fonctionnelles sont: cours, nomProfesseur, prnomProfesseur -> joursCours nomProfesseur, prnomProfesseur -> salaireProfesseur Vrifier la conformit de la table la 2NF l'attribut salaireProfesseur est dtermin par les attributs nomProfesseur et prnomProfesseur, qui forment un sous-ensemble de la cl candidate. Par consquent, la table Enseignement2 doit tre scinde en deux tables: cours(cours, nomProfesseur, prnomProfesseur, joursCours) salaire(nomProfesseur, prnomProfesseur, salaireProfesseur) Chacune des deux tables respecte les critres de 2NF, car une seule dpendance fonctionnelle (DF) existe par schma relationnel. Vrifier la conformit de la table la 3NF Les deux tables cours et salaires correspondent au cas trivial de la 3NF: un seul attribut existe hors cl primaire. Vrifier la conformit de la table la BCNF La table salaire ne contient pas de DF dans sa cl primaire: on pose l'hypothse que plusieurs professeurs peuvent avoir le mme nom. En ce qui concerne la table cours: on considre qu'un cours donn correspond une matire, que plusieurs professeurs peuvent enseigner la mme matire, et qu'une mme matire peut tre enseign par plusieurs enseignants. Par consquent, il n'existe pas de DF l'intrieur de cl primaire de la table cours. Celle ci-est donc bien en BCNF. Vrifier la conformit de la table la 4NF Il n'y a pas de dpendances multi-value dans les tables identifies. Il s'agit du cas trivial de la 4NF. Vrifier la conformit de la table la 5NF Il n'y a pas de dpendances multi-value dans les tables identifies. Il s'agit du cas trivial de la 5NF.

CE-STAT, IUT Lumire 2

2006-2007

Pierre Parrend Bases de Donnes Avances, Module A


Exercice 2.4, table 8 La table considre est: repertoire ( nom, prenom, numeroAdresse, rueAdresse, codePostal, Ville) Vrifier la conformit de la table la 1NF Aucun attribut de la table ne contient des donnes valeur complexe. En particulier, l'adresse est dcompose en champs lmentaires. Identifier les cls candidates La cl candidate est: (nom, prenom) Identifier TOUTES les dpendances fonctionnelles Les dpendances fonctionnelles sont les suivantes: nom, prenom -> numeroAdresse, rueAdresse, codePostal, Ville Vrifier la conformit de la table la 2NF Hypothse: on considre que le nom et le prnom d'une personne permettent de retrouver les informations relatives cette personne de manire unique. Aucun attribut ne peut tre obtenu partir du nom seul, ou du prnom seul. La 2NF est donc respecte. Vrifier la conformit de la table la 3NF Hypothse: aucune dpendance fonctionnelle n'existe entre le code postal et la ville (1 ville peut correspondre plusieurs codes postaux, et 1 code postal peut correspondre plusieurs villes plus petites). Aucune autre dpendance fonctionnelle n'existe entre les attributs hors cl primaire. La 3FN est donc respecte. Vrifier la conformit de la table la BCNF Aucune dpendance fonctionnelle n'existe l'intrieur de la cl primaire. La BCNF est donc respecte. Vrifier la conformit de la table la 4NF Le seul cas de DF valeur multiple existe si une personne plusieurs adresses. Comme aucune autre DF a valeur multiple n'existe, la 4NF est respecte. Vrifier la conformit de la table la 5NF Le seul cas de DF valeur multiple existe si une personne plusieurs adresses. Comme aucune autre DF a valeur multiple n'existe, la 5NF est respecte.

CE-STAT, IUT Lumire 3

2006-2007

Pierre Parrend Bases de Donnes Avances, Module A


Exercice 2.4, table 9 La table considre est: Personne (numeroSecu, nom, prenom, initialesNom, prenomEtAgeEnfants, age ) Vrifier la conformit de la table la 1NF Un champ a valeur complexe existe: prenomEtAgeEnfants. Il doit tre dcompos. La table rsultante est: Personne (numeroSecu, nom, prenom, initialesNom, prenomEnfant, ageEnfants, age ) Identifier les cls candidates Hypothse: une personne n'a pas plusieurs enfants qui ont le mme prnom. Plusieurs cls candidates existent, qui permettent d'identifier de manire unique chaque occurrence de la table: (numeroSecu, prenomEnfant) (nom, prenom, prenomEnfant). On considera ici que le nom et le prnom ne suffisent pas identifier une personne de manire unique. Cette cl candidate ne sera donc pas considre. On a donc: Personne (numeroSecu, nom, prenom, initialesNom, prenomEnfant, ageEnfants, age ) Identifier TOUTES les dpendances fonctionnelles Les dpendances fonctionnelles sont les suivantes: numeroSecu -> nom, prenom, prenomEnfant, age nom, prenom -> initialesNom numeroSecu -> prenomEnfant, numeroSecu, prenomEnfant ->, ageEnfant Vrifier la conformit de la table la 2NF Certaines dpendances dpendent d'une sous-partie de la cl candidate (par exemple: numeroSecu -> nom, prenom, prenomEnfant, age ). La table ne remplit donc pas les critres de 2NF. Il est ncessaire de la scinder. On obtient les tables rsultantes: personne(numeroSecu, nom, prenom, initialesNom, age) enfants(numeroSecu, prenomEnfant, ageEnfant) Vrifier la conformit de la table la 3NF La table enfant contient un seul attribut. Il s'agit donc du cas trivial de la 3NF. La table personne contient des dependances entre attributs hors cl candidate. Il est donc ncessaire de la scinder. Les tables rsultantes sont: personne(numeroSecu, nom, prenom, age) initiales(nom, prenom, initialesNom) Vrifier la conformit de la table la BCNF La table personne a une cl primaire simple. Comme la 3NF est respecte, il s'agit du cas trivial de la BCNF. Il n'existe pas de DF dans la cl primaire de la table initiale. La BCNF est donc respecte. Il existe une DF multi-value directe entre numeroSecu et prenomEnfant dans la cl primaire de la table enfants. Toutefois, ces informations sont indispensables pour obtenir la valeur de l'age de l'enfant. La table enfants ne respecte pas les critres de BCNF, mais nous ne disposons pas des informations

CE-STAT, IUT Lumire 4

2006-2007

Pierre Parrend Bases de Donnes Avances, Module A


ncessaires pour la normaliser. Par example, le numro de scurit sociale de l'enfant serait ncessaire. Vrifier la conformit de la table la 4NF Les tables personnes et initiales ne contiennent pas de DF multi-value. Il s'agit du cas trivial de la 4NF. La table enfants ne respecte pas la BCNF, donc la vrification des critres de 4NF n'a pas de sens. Vrifier la conformit de la table la 5NF Les tables personnes et initiales ne contiennent pas de DF multi-value. Il s'agit du cas trivial de la 5NF. La table enfants ne respecte pas la BCNF, donc la vrification des critres de 5NF n'a pas de sens.

CE-STAT, IUT Lumire 5

2006-2007

Vous aimerez peut-être aussi