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 :

Liaison 1 - 1 entre tables


Sujet :

Schéma

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Liaison 1 - 1 entre tables
    Bonjour à tous.

    J'aimerais avoir votre avis sur la conception d'une table qui contient plusieurs dates et une localisation.
    C'est un débat que j'ai actuellement avec un collègue.

    Choix 1: Mon choix, une seul table
    Nom : PrtScr capture_2.jpg
Affichages : 343
Taille : 15,4 Ko

    Choix 2: Mon collègue, 3 tables avec des liaisons 1to1:
    Nom : Diagramme1.dia (CWINDOWSSystem32) - diaw.exe.jpg
Affichages : 393
Taille : 32,7 Ko

    Personnellement je ne vois aucun intérêt au choix n°2, c'est dans mes habitudes de conception... Mais je préfère avoir un avis externe au cas ou aujourd'hui l'on fait les choses différemment: plus de découpage côté base de données.

    Quel serait votre choix?
    Si vous avez besoin de plus d'explication... N'hésitez pas. Mais je pense qu'il n'y a ici pas besoin d'aller plus loin car cela reste assez simple.

    Merci d'avance. Fabrice

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 130
    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 130
    Points : 38 543
    Points
    38 543
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Avec des cardinalités 1,1 partout et si peu d'attributs dans chaque table, faire 3 tables semble en effet peu judicieux

    Les tables additionnelles sont intéressantes si
    - la cardinalité mini est zéro, pour éviter les attributs "nulls"
    - la cardinalité maxi est > 1, pour répéter autant de fois que nécessaire

    Quels sont les arguments de votre collègue en faveur de son modèle ?

    Par contre, la cardinalité 1,1 entre "localisation" et "essai" me semble douteuse : etes vous sur que pour une localisation il n'y a qu'un et un seul essai ?
    Si la réponse est non, le bon modèle comporte alors 2 tables : "essai" avec une FK vers "localisation" et "localisation"

  3. #3
    Membre éprouvé

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

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bonjour KissGround

    Le principe est que si les cardinalités sont (1.1) (11), il y a fusion des attribut dans une seule entité.
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

Discussions similaires

  1. Mettre à jour plusieurs dates en une seule requête
    Par KamaShin dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/09/2015, 13h30
  2. Plusieurs dates dans une table de faits
    Par Julioun dans le forum Conception/Modélisation
    Réponses: 9
    Dernier message: 27/07/2011, 11h46
  3. [MySQL] Conversion de plusieurs dates dans une même table MySQL
    Par laetiheu dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/08/2007, 09h49
  4. Réponses: 15
    Dernier message: 16/09/2005, 17h43

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