IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

[MCD] Dépendances fonctionnelles


Sujet :

Schéma

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 121
    Points : 82
    Points
    82
    Par défaut [MCD] Dépendances fonctionnelles
    Bonjour,

    j'ai l'énoncé suivant :
    Lors de la mise à jour d'un logiciel de facturation les modifications suivantes ont été demandées. On veut mémoriser les informations suivantes sur les clients*:
    • nom
    • prénom
    • adresse
    • pays
    • numéro de téléphone fixe
    • numéro de téléphone portable
    • adresse e-mail

    De plus sur une remise on veut mémoriser les informations suivantes*:
    • un libellé
    • le numéro de la facture concernée
    • un montant HT
    • une description

    Lors de l'expression des besoins les contraintes suivantes ont été exprimées*:
    • le pays doit se situer en union européenne
    • au moins 1 des 2 numéros de téléphone est obligatoire
    • le nom, le prénom et l'adresse e-mail des clients sont obligatoires
    • la description, le numéro de facture, le libellé et le montant de la remise sont obligatoires
    • le montant de la remise ne doit pas dépasser 15% du montant de la facture
    Pour la dépendance fonctionnelle du client, le corrigé est :
    email -> nom, prenom ....

    Serai-t-il pas plus judicieux d'avoir nom,prenom,email -> rue, code postal .... ?

    Par principe, si cela n'est pas dans l'énoncé, peut on ajouter un attribut du style id_client ?

    merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir bbsebb,


    Citation Envoyé par bbsebb Voir le message
    j'ai l'énoncé suivant
    Commencez par étudier les dépendances fonctionnelles dans leur contexte d’origine, c’est-à-dire celui de la théorie relationnelle, comme c’est décrit dans l’article Bases de données relationnelles et normalisation

    Il faut commencer par maîtriser le concept de relvar (relation variable, en français variable relationnelle) et de tuple (même référence).

    Ceci fait, passer aux dépendances fonctionnelles proprement dites.

    Le déterminant d’une DF est un ensemble (au sens de la théorie des ensembles), les noms des éléments qui le composent sont donc notés entre accolades "{", "}". Ainsi, on n’écrit pas :

    email -> nom, prenom

    Mais

    {email} → {nom, prenom}

    Ou encore

    {email} → {nom}

    {email} → {prenom}

    Avec les DF, la précision est de mise. Vous avez utilisé des points de suspension pour la DF de votre corrigé, sans doute pour signifier que les attributs autres que nom et prenom autres font l’objet de dépendants de {email}.

    Si tel est le cas, n’hésitez pas à écrire :

    DF01 = {email} → {nom}

    DF02 = {email} → {prenom}

    DF03 = {email} → {adresse}

    DF04 = {email} → {pays}

    DF05 = {email} → {noTelFixe}

    DF06 = {email} → {noTelPortable}

    Définissez de la même façon les DF concernant la relvar utilisée pour les remises.

    A propos de la DF qui vous paraît judicieuse :

    DF07 = {nom, prenom, email} → {rue, code postal}

    Vous avez décomposé l’attribut adresse en rue et code postal, donc la DF DF03 donne lieu à :

    DF08 = {email} → {rue, code postal}

    C’est-à-dire que DF08 est un sous-ensemble de DF07. Mathématiquement parlant, il n’y a pas de problème. Maintenant, il apparaît que la relvar CLIENT a pour clé candidate {email}, vérifiant les contraintes d’unicité et d’irréductibilité de ce type de clé. Dans ces conditions, DF07 n’est qu’une surclé, car elle ne vérifie pas la contrainte d’irréductibilité : DF07 n’apporte rien, au contraire...

    En revanche, la décomposition de l’adresse, avec notamment la mise en évidence du code postal, ne relève pas de la normalisation, mais de la modélisation. Cette mise en évidence du code postal étant courante, à vous de voir (attention, le type de données doit être utilisable quel que soit le pays dans l’UE, actuel ou à venir...).

    Ajouter un attribut id_client est toujours possible, mais fournissez la liste des DF dans lesquelles il est impliqué (surtout dans la mesure où vous souhaiteriez qu’il fasse lui aussi l’objet d’une clé candidate).
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. dépendance fonctionnelle et MCD
    Par HAM_10 dans le forum Merise
    Réponses: 2
    Dernier message: 19/12/2016, 22h02
  2. Définition d'une dépendance fonctionnelle élémentaire ?
    Par Didine1801 dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 30/11/2010, 16h59
  3. ODBC et les dépendances fonctionnelles
    Par LordBob dans le forum MFC
    Réponses: 4
    Dernier message: 08/07/2005, 10h05
  4. dépendances fonctionnelles
    Par aaronw dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2005, 14h39
  5. [Concept] Dépendances fonctionnelles
    Par bolo dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 24/01/2003, 20h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo