Partage
  • Partager sur Facebook
  • Partager sur Twitter

utilité d'une table supplémentaire

Sujet résolu
    19 janvier 2019 à 20:52:43

    Bonjour, je suis actuellement en train de créer un petit site avec un forum et un système de messagerie privée. 

    J'ai créé 2 schémas représentant la base de donné et j'aimerai savoir si l'un est préférable à l'autre.

    Le premier contient 2 tables "message_forum" et "message_prive"

    message_forum : 

    - id

    - id_auteur

    - id_categorie_forum

    - message

    - date_creation

    message_prive :

    - id

    - id_auteur

    - id_destinataire

    - message

    - date_creation

    Etant donné que ces deux tables se ressemblent beaucoup j'ai eu l'idée de créer une table "message".

    message :

    - id

    - id_auteur

    - message

    - date_creation

    Pour ensuite modifier les autres tables existantes 

    message_forum : 

    - id

    - id_message

    - id_categorie_forum

    message_prive :

    - id

    - id_message

    - id_destinataire

    En séparant en 3 tables et non 2, je peux imaginer une future fonctionnalité "message à un groupe" ou encore "enregistrer le message en brouillon". C'est pratique mais il y a un revers à la médaille : le type de donnée pour le message reste le même. Si j'ai envie de créer un chat avec des messages courts le type de donnée utilisé sur le forum et la messagerie privée ne sera pas bien adapté.

    • Partager sur Facebook
    • Partager sur Twitter
      21 janvier 2019 à 9:30:53

      Bonjour,

      La deuxième solution utilisant l'héritage me paraît plus souple et plus évolutive même si la mise en oeuvre sera en peu plus délicate côté programmation.

      Au passage, dans la table message_forum, pas besoin de recréer un id propre, il faut utiliser l'id_message comme clé primaire (et clé étrangère). Et dans la table message_prive, pas besoin de recréer un id propre, il faut mettre la clé primaire composée ( id_message, id_destinataire ).

      Benevolar a écrit:

      le type de donnée pour le message reste le même. Si j'ai envie de créer un chat avec des messages courts le type de donnée utilisé sur le forum et la messagerie privée ne sera pas bien adapté.

      Il suffit de basculer le contenu du message dans un attribut des entités filles pour pouvoir lui affecter le type le plus pertinent en fonction du type de message ...

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

      utilité d'une table supplémentaire

      × 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