Probleme de cardinalite
cobra13
-
Breub62 Messages postés 3452 Statut Membre -
Breub62 Messages postés 3452 Statut Membre -
Bonjour,
voila j'ai un petit soucis, je vais essaye d'être clair !! lol
j'ai 2 tables, la première MALADIE et la seconde PIERRE.
- Une maladie peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs maladie
- une pierre peut guérir plusieurs maladies !
Que dois je faire pour quand j'interroge les tables il me sorte pour une pierre toutes les maladies qu'elle peut guérir ? Et vice et versa pour une maladie, toutes les pierres qui peuvent la guérir ?
Merci pour votre aide
voila j'ai un petit soucis, je vais essaye d'être clair !! lol
j'ai 2 tables, la première MALADIE et la seconde PIERRE.
- Une maladie peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs maladie
- une pierre peut guérir plusieurs maladies !
Que dois je faire pour quand j'interroge les tables il me sorte pour une pierre toutes les maladies qu'elle peut guérir ? Et vice et versa pour une maladie, toutes les pierres qui peuvent la guérir ?
Merci pour votre aide
6 réponses
Pour l'instant, je travaille avec un crayon et un papier ! lol
Sans plaisanterie, je suis au tout début de mon projet, et pour moi meurise est tres loin !
table PIERRE
code_pierre
Nom
table MALADIE
code_maladie
Nom
je voulais savoir comment modéliser les 2 tables entres elles car sans relation entre elles je me retrouve avec une cardinalite 1,n de chaque cote.
Comme je l'ai dit auparavant
- Une maladie peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs maladie
- une pierre peut guérir plusieurs maladies !
J'aurais d'autres tables ensuite qui suivront le même schéma
comme par exemple la table SIGNE (code_signe, Nom)
- Un signe peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs signes
Sans plaisanterie, je suis au tout début de mon projet, et pour moi meurise est tres loin !
table PIERRE
code_pierre
Nom
table MALADIE
code_maladie
Nom
je voulais savoir comment modéliser les 2 tables entres elles car sans relation entre elles je me retrouve avec une cardinalite 1,n de chaque cote.
Comme je l'ai dit auparavant
- Une maladie peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs maladie
- une pierre peut guérir plusieurs maladies !
J'aurais d'autres tables ensuite qui suivront le même schéma
comme par exemple la table SIGNE (code_signe, Nom)
- Un signe peut correspondre à plusieurs pierres
- une pierre correspond a plusieurs signes
En terme de MLD (Modèle Logique de Données) ta relation avec les cardinalités 1,n - 1,n donnera ça :
PIERRE(code_pierre, nom)
Clé primaire : code_pierre
MALADIE(code_maladie, nom)
Clé primaire : code_maladie
ETRE_EN_RELATION(code_pierre, code_maladie)
Clé primaire : code_pierre, code_maladie
Clés étrangères : code_pierre EN PROVENANCE DE PIERRE(code_pierre)
code_maladie EN PROVENANCE DE MALADIE(code_maladie)
Les clés étrangères sont des clés primaires dans d'autres tables. Ici, par exemple, code_pierre est la clé primaire de PIERRE, et sera une clé étrangère de ETRE_EN_RELATION.
Grâce à des requêtes SQL utilisant IN/NOT IN ou EXISTS (dans les conditions WHERE/AND/OR) tu pourras savoir quelle pierre correspond à quelles maladies et quels signes.
PIERRE(code_pierre, nom)
Clé primaire : code_pierre
MALADIE(code_maladie, nom)
Clé primaire : code_maladie
ETRE_EN_RELATION(code_pierre, code_maladie)
Clé primaire : code_pierre, code_maladie
Clés étrangères : code_pierre EN PROVENANCE DE PIERRE(code_pierre)
code_maladie EN PROVENANCE DE MALADIE(code_maladie)
Les clés étrangères sont des clés primaires dans d'autres tables. Ici, par exemple, code_pierre est la clé primaire de PIERRE, et sera une clé étrangère de ETRE_EN_RELATION.
Grâce à des requêtes SQL utilisant IN/NOT IN ou EXISTS (dans les conditions WHERE/AND/OR) tu pourras savoir quelle pierre correspond à quelles maladies et quels signes.
Et quelle est ta question ? >.<
Quelles sont les cardinalités entre les tables ?
Tu travailles avec quoi ?
Quelles sont les cardinalités entre les tables ?
Tu travailles avec quoi ?
En fait la table PIERRE est la table centrale.
Au final, ce que je voudrais c'est que en interrogeant une pierre cela me donne tous les renseignements lui correspondant !
la pierre X correspond aux signes X, Y, Z ..., elle guérit la maladie X,Y,Z
Au final, ce que je voudrais c'est que en interrogeant une pierre cela me donne tous les renseignements lui correspondant !
la pierre X correspond aux signes X, Y, Z ..., elle guérit la maladie X,Y,Z
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
donc la cle primaire de la table relation sera (code_pierre,code_maladie)
Tu parles de cles etrangeres ? c'est à dire ?
Tu parles de cles etrangeres ? c'est à dire ?
Une clé étrangère veut simplement dire que le code_pierre que tu trouve dans ta nouvelle table fait référence à la clé primaire de la table pierre.
Donc pour répondre à ta question tu auras 3 tables, avec 2 jointures à faire pour tes requêtes select. Pour connaitre les maladie que guérit un pierre donnée, il te suffit, par exemple, de sélectionner toutes les lignes de la nouvelle table où code_pierre='X'
Donc pour répondre à ta question tu auras 3 tables, avec 2 jointures à faire pour tes requêtes select. Pour connaitre les maladie que guérit un pierre donnée, il te suffit, par exemple, de sélectionner toutes les lignes de la nouvelle table où code_pierre='X'
Ainsi dans cette table c'est le couple pierre-maladie qui constitue une clé unique...