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 :

du MCD au MLD


Sujet :

Schéma

  1. #1
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 87
    Points
    87
    Par défaut du MCD au MLD
    sachant que l'entité "date" du MCD ne devient pas une table , que devient elle dans la base de donnée , comment la modeliser pour pouvoir l'utiliser ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    Toute entite cree en MCD devient une table en MPD. Maintenant, votre SGBDR peut considerer DATE comme un mot reserve et empecher sa creation. Avec quel outil de modelisation travaillez-vous ? Sur quel SGBDR voulez-vous generer votre script ?
    En tout etat de cause, je redirige votre requete sur le forum Modelisation.
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  3. #3
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 87
    Points
    87
    Par défaut
    notre prof nous a di que l'entité date ne devenait pas une table,
    comme par exemple une association ayant une cardinalité maximale = à 1 ne devient pas une table mais il ya juste migration de son identifiant .

    je voulais savoir que devenait l'entité date ?

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    si je comprends bien ton probleme ton entité date est en faite ce que l'on appelle une table parametre. elle est composé seulement de la date.

    MCD
    ces tables apparraissent seulement dans les relations par exemple :

    tu as :
    tbl_matériel (code_mat, lib_mat)
    tbl_client(code_cli, nom_cli)
    date (ta table parametre)

    et tout ca attaché par une association par exemple assoc_achat

    MLD
    tbl_matériel (code_mat, lib_mat)
    tbl_client(code_cli, nom_cli)
    assoc_achat(date, code_cli, code_mat)

    la table parametre "date" ne figure plus sur le MLD enfin tu peux la laisser mais ca ne sert à rien.

    en espérant que j'ai répondu a ta question
    Baboune

  5. #5
    Membre confirmé

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 113
    Points : 488
    Points
    488
    Par défaut
    C'est la problématique de la modélisation du temps, maintes fois développé dans la littérature, en particulier dans un bouquin bien connu

    Je résumes...
    1/ au niveau MCD
    1.1/ Date modélisé comme une simple propriété
    C'est le plus fréquent; la date est une simple information de positionnement dans le temps d'un événement.
    Ex: date de commande, date de naissance, date de signature, etc...

    1.2/ Date modélisée par une entité
    N'est nécessaire que pour le suivi de phénomènes au cours du temps. le temps devient alors une "dimension"
    Ex: suivi de production, suivi de temps de travail, planning...
    Dans la pratique, il vaut mieux nommer l'entité par la fraction de temps gérée; l'identification dépendant de cet intervalle de temps; la date identifiant une journée.
    Ex: Jour, Semaine, Module horaire (cas des emplois du temps scolaire)

    Lorsque l'on doit modéliser explicitement le temps, alors il n'intervient que dans des relations n-n ou n-aires. Une entité Date impliquée dans une relation binaire 0n-11 est plus que suspect !

    2/ Transformation en MLD
    Sans commentaire lorsque la Date est une propriété....

    Les entités temporelles (Jour, Semaine, Mois, ...) deviennent normalement des tables !
    Remarque: je ne comprends bien la remarque
    notre prof nous a di que l'entité date ne devenait pas une table,
    Ou plutôt c'est un "raccourci".

    En effet, ces tables temporelles ne contiennent généralement que l'identifiant (Jour identifié par Date) et suite à la transformation ont généré des clés étrangères dans les tables associées.
    Cette "migration" effectuée, on peut alors se poser la question de l'intérêt de conserver une telle table. Sa suppression relève alors de l'optimisation (pas de contenu autre que la clé, pas de nécessité de contrainte référentielle).
    Voilà pourquoi, une table Jour (Date) est assez fréquemment supprimée.

    Mais, si la table "temporelle" contenait des attributs spécifiques
    Ex Nombre d'heures disponibles dans la Semaine, Journée ouvrable, ..
    alors cette optimisation serait pour le moins innoportune !

    PS: Désolé de rappeler encore que les MCD ne contiennent pas de tables !
    Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément.
    L'Art poétique - Nicolas Boileau (1636-1711)

  6. #6
    Membre régulier
    Homme Profil pro
    Analyste
    Inscrit en
    Août 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2003
    Messages : 85
    Points : 87
    Points
    87
    Par défaut
    Une table "DATE" n'est utilise que si on souhaite historisé.
    Sinon les dates ne sont que des attributs... en tout cas, c'est comme ça que je fais tout le temps
    Air startout

  7. #7
    Membre confirmé

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 113
    Points : 488
    Points
    488
    Par défaut
    Attention, le mécanisme d'historisation et le fait d'utiliser une entité (et non une table...!) Date relèvent de principes différents.
    L'historisation indique que l'on souhaite, pour une occurence d'une entité, conserver les valeurs antérieures prises par certaines propriétés. La date est alors celle du changement de valeur
    Ex: on peut historiser l'adresse d'une Personne. On a alors l'adresse courante, et les adresses antérieures avec les dates de changement.

    L'entité Date s'utilise dans le cas de suivi de phénomène ou d'activité. Le temps est alors une dimension à part entière, et les valeurs du temps sont généralement régulières (les jours, les semaines, les mois,...). En reliant une entité à une entité "temporelle" (jour, semaine, ...), on réalise un suivi chronologique d'une propriété initialement rattachée à l'entité "non temporelle".
    Ex: si la Personne veut suivre quotidiennement son poids, on modélisera
    Personne --1,n --(suivi)--0,n--Jour
    avec poids comme propriété de (suivi)

    Par contre, au niveau du MLD relationnel, on aboutira dans les deux cas à une table Date mais dont l'origine sémantique est nettement diférente.

    Si on veut faire du MCD, alors il faut l'utiliser correctement et non comme un substitut du MLD; il vaut mieux alors s'exprimer directement en relationnel.
    Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément.
    L'Art poétique - Nicolas Boileau (1636-1711)

  8. #8
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 87
    Points
    87
    Par défaut
    merci baboune c'est exactement ca !

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

Discussions similaires

  1. Quelle est la différence entre MCD et MLD
    Par progfann dans le forum Schéma
    Réponses: 7
    Dernier message: 30/05/2013, 16h11
  2. passage du MCD AU MLD
    Par stef51 dans le forum Schéma
    Réponses: 2
    Dernier message: 12/06/2007, 08h31
  3. [merise] passage de MCD a MLD
    Par dj_cue dans le forum Schéma
    Réponses: 9
    Dernier message: 31/03/2006, 23h06
  4. Passage du MCD en MLD en MPD
    Par shinshon dans le forum Schéma
    Réponses: 3
    Dernier message: 02/11/2005, 15h42
  5. MCD ou MLD pour postgresql?
    Par jujuz dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 26/01/2005, 22h22

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