MCD d'une bdd

Fab -  
 Utilisateur anonyme -
Bonjour,

Je crée actuellement un site de musique libre de droit. (pour les jeunes artistes désireux de se faire connaitre par le biais d'un site internet).
J'ai quelque doute sur la conception de ma base de donnée...
---
(téléchargeable ici : http://ptrck.perso.sfr.fr/mcd.xls)
---
Notamment pour :
- La relation "artiste -> titre -> album".
Je l'ai créé de tel sorte pour qu'un artiste crée une musique sans pour autant que cette dernière soit contenu dans un album.
Un ami m'as conseillé de transformer cette relation de cette manière :"artiste -> album -> titre". Dans la logique "contenant => contenu".
Qu'en pensez-vous?
---
- La relation des tables de jointure "commenter" et "aimer" sont lié de la même façon entre chaque même table. Cela pose-t-il problème?
Merci d'avance.
Cordialement,
Fab.

2 réponses

  1. Utilisateur anonyme
     
    Bonjour,

    Le choix de lier artiste->titre->album tient la route si on considère qu'un titre peut exister sans que l'artiste ait fait un album
    Si ce n'est pas le cas artiste->album->titre est plus logique

    Par contre vous ne liez pas l'artiste à l'album, c'est une philosophie mais lorsque vous allez vouloir afficher l'artiste d'un album ça va sans doute être coton.

    Avez-vous envisagé que plusieurs artistes peuvent participer à un titre ?

    Vous n'avez pas précisé les champs de liaisons entre les données, c'est volontaire (clef secondaires) ?

    Pour les commentaires, vous pouvez ajouter un champ pour préciser sur quel type de donnée repose le commentaire ou bien créer un clef particulière pour les artistes, albums et titres par exemple.
    0
  2. Fab
     
    Bonjour neoprog67 et merci pour votre réponse.

    Effectivement j'aurais surement quelques difficultés à afficher les albums des artistes avec ce MCD. Je l'ai donc revu et corrigé de la manière suivante :

    une table de jointure "contenir" fais le lien entre les trois table "artiste" "titre" et "album". Cette table contiendra donc les 3 clef secondaires des 3 tables.

    Pour les "commentaires" et les "j'aime" même chose.

    Oui, j'avais envisagé que plusieurs artistes puissent participer à un titre.

    Cela vous semble-t-il correcte?

    Cordialement,
    Fab
    0
    1. Utilisateur anonyme
       
      Je vous proposerais bien une autre structure :

      TITRE
      id_titre clef primaire
      id_album clef secondaire
      ...

      ALBUM
      id_album clef primaire
      id_groupe clef secondaire
      ...

      GROUPE
      id_groupe clef primaire
      id_artiste clef secondaire
      ...

      ARTISTE
      id_artiste clef primaire
      ...

      COMMENTAIRE
      id_album clef secondaire
      id_titre clef secondaire
      id_groupe clef secondaire
      id_artiste clef secondaire
      ...

      J'ai un site ou globalement ça fonctionne comme ça sauf que je n'ai pas de notion d'artiste et j'ai en plus des critiques http://www.neoprog.eu
      0
    2. Fab
       
      Je prend bonne note de vos conseils !
      Dans ma base de donnée l'artiste peut aussi bien être un groupe qu'une seule personne.
      Ce qui reviens, si j'adapte votre structure, à artiste->album->titre.
      Comme je vous l'avais dit, je désire faire un site qui met en avant les jeunes artiste en proposant aux internautes d'écouter leurs musiques de les commenter et s'ils aiment de le notifier par un bouton "j'aime".

      Comme se sont de nouveaux artistes ils n'auront pas forcement fait d'album, mais que quelque titre. C'est pourquoi ne pas faire de liaison entre artiste et titre me rend un peu perplexe.

      En tous cas j'suis aller visiter votre site. Il m'a l'air sympa et les requêtes sql ont l'air de passer toute seul ;).
      J'ai remarqué également en allant sur votre profils que vous n'aviez pas qu'un seul site à votre actif et que vous proposiez bien des services ;).

      Un jeune débutant plein d'avenir dans le webmastering pourrait-il vous aider par télé-travail? :p

      Lol, en tous cas merci pour vos réponses.
      Cordialement,
      Fab.
      0
    3. Utilisateur anonyme
       
      Pour l'instant je suis auto entrepreneur, donc je travaille forcément seul, du fait de mon statut et, pour l'instant, je n'ai pas de quoi occuper une deuxième personne, mais merci pour votre proposition
      Cordialement
      0