Partage
  • Partager sur Facebook
  • Partager sur Twitter

Boucle sur une table MCD

J'ai une boulce sur table de mon MCD

    17 février 2021 à 21:17:24

    Salut tout le monde;

    Je demande vos avis concernant mon MCD

    j'ai une checklist que je dois reproduire fidèlement (IMAGE)



    Une checklist a une ou plusieurs colonnes;
    Chaque colonne appartient a une checklist.

    Une checklist une ou plusieurs questions;
    Chaque question a une checklist.

    Chaque question de la checklist attend un type de réponse selon la colonne.

    Voici mon MCD



    Avec ce modèle, il existe une boucle sur checklist. Lors de la transformation en MLD, l'association "Avoir 3" va contenir deux clés de la table checklist.

    Voyez vous une idée afin d éviter ce problème ?

    Merci

    • Partager sur Facebook
    • Partager sur Twitter
      18 février 2021 à 9:54:20

      Bonjour,

      Je ne comprends pas la notion de colonne ...

      Ce que je comprends : une checklist a des questions, et la réponse à ces questions est d'un type donné. Dans l'exemple donné, la checklist dispose de 7 questions, toutes ont une réponse de type "number" ? Que peuvent être les autres colonnes ?

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        18 février 2021 à 10:41:23

        Bonjour

        Ce que tu as dit concernant le tableau ci-dessus au juste, mais c'est un cas simple.
        considérons le tableau suivant :

        Avec Question 1, on peut avoir 3 type de réponse selon la colonne :
            Col1: True or False
            Col2: Number
            Col3: Number in percent

        Ce qui fait encore la particularité, est que les éléments d'une même colonne peuvent ne pas avoir le même type de réponse comme dans le tableau ci-haut.


        Avec le deuxième tableau (en bas), on voit que la question 3 doit être répondue par vrai ou faux dans la colonne 1, par une date dans la colonne 2, et par un pourcentage dans la colonne 3.

        Je pense avoir donné plus de détails.

        • Partager sur Facebook
        • Partager sur Twitter
          18 février 2021 à 11:07:21

          Oui, c'est plus clair.

          Mais comment une même question peut avoir des formats de réponse complètement différents ? Cela me paraît irréaliste ... Tu as un exemple concret ?

          Cette chose mise à part, le modèle que tu as proposé est correct, la boucle que tu évoques n'en est pas une ... La seule chose à maîtriser c'est d'empêcher par la relation "Avoir 3" de pouvoir associer une question et une colonne qui ne sont pas liées à la même checklist. Côté MCD cela se représente avec une contrainte entre les trois entités concernées, côté MPD cela se matérialise avec un TRIGGER BEFORE INSERT ON "Avoir 3" qui fait ce contrôle et bloque l'insertion le cas échéant.

          Mais je serais quand même curieux de voir un cas d'application réel de cette modélisation ... il y a peut-être un loup ...

          -
          Edité par Benzouye 18 février 2021 à 11:07:55

          • Partager sur Facebook
          • Partager sur Twitter
          Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
            18 février 2021 à 13:18:14

            Salut

            Merci pour les remarques. Je laisse tomber le cas du deuxième tableau car j'ai demandé et j'ai pas eu de réponses claires pour l'instant.

            Si je me base sur le premier tableau de ma dernière publication, je dirais :
                Chaque colonne de réponse de ma checklist a un type de réponse. Ce qui donne le MCD suivant
               

            Ce qui veut dire qu'une colonne ne peut avoir q'un seul format.

            • Partager sur Facebook
            • Partager sur Twitter
              18 février 2021 à 13:42:55

              Ne peux-tu pas me donner un exemple concret de ce dont on parle ici ? Il y a un problème de confidentialité ?

              Ce n'est pas pour espionner ( promis juré :) ), c'est juste pour essayer de comprendre de quels types de données et d'objets il est question ...

              • Partager sur Facebook
              • Partager sur Twitter
              Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
                18 février 2021 à 14:10:42

                Désolé j'ai pas publié le bon MCD.



                Si je cache des choses ça m’arrange pas du tout.

                J'ai des fiches (ici checklist) et je dois les créer dans le système afin que les utilisateurs les répondent.
                Chaque checklist a ses caractéristique propre a lui : Nom, ses colonnes de réponses(avec le formate de réponse accepté), questions.
                Chaque colonne de réponse de la checklist est destinée a un type de réponse (ou formate de donnée: vrai ou faux, date, nombre...).

                L'utilisateur de saisie arrive, il choisit sa checklist puis il réponse les questions.

                Les fiches peuvent avoir différents modèles  raison pour laquelle j'essaie de rendre dynamique leur création


                Exemple : On peut avoir des fiches de 3 colonnes, 4 colonnes, n colonnes.

                La table colonnes est pour moi le moyen de garder les colonnes de réponse pour chaque ckecklist ou fiche.

                Si c'est pas claire tu me dis

                • Partager sur Facebook
                • Partager sur Twitter
                  18 février 2021 à 16:21:36

                  MrFOF a écrit:

                  Si je cache des choses ça m’arrange pas du tout

                  Pas de souci ... même pas un exemple "déguisé" ? Avec un vocabulaire "approchant" ? C'est vraiment difficile de t'aider sans comprendre de quoi l'on parle ...

                  En plus tu n'as pas encore évoqué le stockage des réponses pour chaque question/colonne ...

                  Sinon dans le dernier modèle posté, il n'y a plus de lien entre les colonnes et les questions ... c'est à dire que chaque question d'une checklist aura toutes les colonnes de cette checklist ... je ne pense pas que ce soit ce que tu souhaites si ?

                  -
                  Edité par Benzouye 18 février 2021 à 16:22:13

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL

                  Boucle sur une table MCD

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown