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

MySQL Discussion :

Associations porteuses de données


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 6
    Par défaut Associations porteuses de données
    Bonjour,

    je suis face à un problème, il existe 2 tables et il y à une relation porteuse de données entre ces deux.

    La table "Movie" est reliée a la table "Category" par une relation de porteuse de données ayant les cardinalités 0,N de chaque coté.

    Or, je souhaiterais que les cardinalités de la table Movie passent de "0,N" -> "0,1" et celles de la table Category restent 0,N.

    Merci d'avance pour vos réponses
    Images attachées Images attachées  

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 613
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    Ce que vous dites implique qu'un film qui pouvait jadis appartenir à plusieurs catégorie, appartiendra désormais au plus à une seule catégorie.
    Du coup vous perdrez forcément toutes les catégories en doublon pour un film dans la table film_category issue de la relation entre les 2 entités-type

    Il faudra trouver un critère pour ne conserver que la bonne catégorie

    Si vous voulez absolument conserver les enregistrements actuels, alors il faut gérer à date (ajouter la date dans la relation) pour que la catégorie soit valable jusqu'au ...
    En positionnant des dates de fin échues sur les enregistrements que vous ne souhaitez pas voir actifs, vous pourrez conserver toutes vos lignes

    L'entité-type date en ce cas sera ajoutée sur le MCD afin que la date soit ajoutée dans l'identifiant de la relation, mais il n'est pas nécessaire d'en faire une table bien sur

  3. #3
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 889
    Par défaut
    Salut Evrangs.

    Citation Envoyé par Evrangs
    Or, je souhaiterais que les cardinalités de la table Film passent de "0,N" -> "0,1" et celles de la table Catégories restent 0,N.
    Je n'ai jamais compris l'intérêt de mettre un "0" dans la cardinalité de la relation que vous définissez.
    Dans votre exemple, cela signifie qu'un film n'appartient à aucune catégorie. Ou encore, des catégories ne contiennent aucun film.

    L'intérêt de la classification est justement de faire en sorte que tous les films puissent être rangés dans une catégorie
    Et qu'une catégorie possède au moins un ou plusieurs films.
    Sinon, je ne voie pas l'intérêt de créer une classification si des éléments n'entrent pas dans cette classification, c'est contradictoire.
    Autrement dit, vous avez un problème de définition dans votre MCD.

    Une catégorie possède au moins un film. Un film appartient à une et une seule catégorie.

    Citation Envoyé par Evrangs
    Seulement je ne dois perdre aucune données, avez-vous des solutions ?
    La solution est de créer :
    --> une entité historique des changements de l'appartenance d'un film à une catégorie, en datant l'introduction de la relation dans cette entité.
    --> une clef étrangère entre l'entité film (1,1) vers l'entité catégorie (1,N).

    Dans l'entité historique, la date permettra de définir la période d'appartenance du film à une catégorie donnée.
    Le fait de mettre la relation dans l'entité historique, invalide la relation d'appartenance actuelle du film à la catégorie.

    Maintenant, votre relation film_catégorie porteuse d'informations n'a plus aucune raison d'exister en tant que telle.
    Cela répond donc à votre besoin de définir une et une seule catégorie pour un film donnée, sans perdre aucune information actuelle.

    @+

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 6
    Par défaut
    Citation Envoyé par Artemus24 Voir le message
    Salut Evrangs.

    Maintenant, votre relation film_catégorie porteuse d'informations n'a plus aucune raison d'exister en tant que telle.
    Cela répond donc à votre besoin de définir une et une seule catégorie pour un film donnée, sans perdre aucune information actuelle.

    @+
    Merci Artemus c'est super gentil de votre part ça m'aide vraiment !

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

Discussions similaires

  1. [Débutant] MCD Probleme de comprehension association porteuse de données .
    Par oshigamie dans le forum Accès aux données
    Réponses: 1
    Dernier message: 27/04/2015, 11h34
  2. [Débutant] Association porteuse de données - Code First
    Par neka11 dans le forum Entity Framework
    Réponses: 2
    Dernier message: 05/09/2014, 15h51
  3. comment faire une requête avec une association porteuse de données
    Par gaelle95 dans le forum Accès aux données
    Réponses: 3
    Dernier message: 25/11/2009, 15h49
  4. Association Porteuse de données
    Par snipes dans le forum Langage SQL
    Réponses: 1
    Dernier message: 10/04/2006, 14h39
  5. [Renseignement] Association porteuse de données
    Par Machjaghjolu dans le forum Langage SQL
    Réponses: 5
    Dernier message: 01/06/2005, 13h16

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