Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/06/2006, 15h00   #1
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Par défaut Organisation d'une Base de donnée

Bonjour à tous,

J'aurais besoin de créer une base de donnée pour mon site en php mais je ne sais pas trop comment l'organisé...

Voila les infos que j'aurais besoin d'y insérer...

id
dj
biographie
productions
------Project
------titres
------annee
remixes
------Project
------titres
------année
compilations
------nom
------année

C'est pour afficher sur une page la biographie
Sur une autre les productions, classés par projet et titre au project correspondant
Idem sur une autre page pour les remixes
Idem sur une autre page pour les compils

Pour ce qui est du php ca ne me pose pas de soucis, mais je vois pas trop comment organisé ma base de donnée, si quelqu'un pouvait me dire ce qu'il en pense...

Merci !!!

P.S. : Un DJ peut avoir plusieurs projects qui eux mêmes peuvent avoir plusieurs titres.
Un DJ peut avoir plusieurs Project de remix également qui peuvent également avoir plusieurs titres.
et encore idem pour les compils...

Un petit aperçu de ce que ca donne en html http://kilkikou57.free.fr/artistes/dj_lee/djlee.htm

Merci pour votre aide.
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2006, 15h47   #2
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Une BDD qui me passe par la tête :

Citation:
Table DJ (id_dj, nom,biographie);
Table Production (id_prod, id_dj, nom_prod, id_projet);
Table Remixe (id_remix, id_dj, nom_remix, id_projet);
Table Compil (id_compil, id_dj, nom_compil, annee);
Table Projet (id_projet, nom_projet, titre, annee);
C'est vraiment fait à froid, donc s'il y a d'autres propositions
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2006, 16h52   #3
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Avec cette configuration il est possible de faire ce que j'ai besoin ??
Par contre il faut utiliser des clefs externes alors ??
une fois que l'on définit des clefs externes les relations se font toutes seules ??

Merci pour vos réponses.
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2006, 16h56   #4
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Tu as l'air d'être perdu en BDD donc je te donne quelques liens
Avant d'aborder le SQL : Définitions,La base de données exemple (gestion d'un hôtel)

Le simple (?) SELECT, Les jointures, ou comment interroger plusieurs tables

Réponses :
  1. Oui
  2. il faut joindre sur les différents id pour obtenir ce que tu veux
  3. non tu dois le faire à partir de jointure pour obtenir tes résultats
Par exemple tu veux obtenir la biographie tu prends directement dans la table dj. de même pour les autres table.

Pour l'affichage des info en rapport avec un projet et un dj il faut effectuer une jointure

ps : Comme j'ai dit, il se peut qu'il y ait une meilleure solution, mais bon
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2006, 20h53   #5
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Je vais déja étudier cette solution...si quelqu'un d'autre pense avoir quelque chose d'autre qu'il n'hésite pas à poster la solution...
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2006, 08h24   #6
Invité de passage
 
Inscription : avril 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 9
Points : 4
Points : 4
je veux bien t'aider (j'ai donné qques cours de BdD) mais je comprends pas trop les différents éléments.

un dj, je sais ce que c'est. il possède un nom et une biographie, parfait.

essaie de m'expliquer un peu plus longuement ce qu'est un "project", un "remixe" et une "compilation".
gbetous est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2006, 14h05   #7
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Citation:
Envoyé par gbetous
je veux bien t'aider (j'ai donné qques cours de BdD) mais je comprends pas trop les différents éléments.

un dj, je sais ce que c'est. il possède un nom et une biographie, parfait.

essaie de m'expliquer un peu plus longuement ce qu'est un "project", un "remixe" et une "compilation".
Alors un project est le nom que le DJ utilise pour les différents titres qu'il va sortir. Prenons un exemple. DJ Manian, le plus grand producteur de Trance allemande du moment.
Donc son nom de dj est DJ Manian il compose sous plusieurs projects, tel que Cascada, Tune Up! et sous ses projects il a fait plusieurs titres.

Donc en résumé on peut avoir :

DJ manian
Biographie

Project1
titre1;
titre2;
titre3;

Project2
titre1;
titre2;
titre3;

Idem pour les remix, a part qu'il remixe le titre d'autre dj, mais le principe reste le même.
Une compilation est par exemple Dream Dance 32 mixed by DJ Manian.
Juste le titre de la compil, plus le nom du DJ.

Voila j'espère avoir réussi à me faire comprendre.
Merci à vous pour votre aide.
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2006, 14h17   #8
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Il serait pas mieux ici http://www.developpez.net/forums/f36/bases-donnees/decisions-sgbd/ ce post ? Enfin pour avoir plus de réponses avec des gens qui brassent dans le domaine c'est le mieux
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2006, 14h21   #9
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Citation:
Envoyé par JWhite
Il serait pas mieux ici http://www.developpez.net/forums/forumdisplay.php?f=36 ce post ? Enfin pour avoir plus de réponses avec des gens qui brassent dans le domaine c'est le mieux
Mettez le sujet là ou vous pensez qu'on pourra m'aider...
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 08h46   #10
Invité de passage
 
Inscription : avril 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 9
Points : 4
Points : 4
ok, je comprends mieux...

en fait, à la base, tu dois avoir les tables simples suivantes :

Table DJ (id_dj, nom,biographie);
Table Project(id_project,id_dj,nom);
Table Titre(id_titre,id_project,nom);

puis ensuite, une compilation c'est un peu plus compliqué :
Table Compil(id_compil,id_dj,nom);
Table ContenuCompil(id_compil,id_titre);

C'est la 2e table qui te permettre de mettre autant de titres dans la compil que tu veux (un enregistrement par titre dans une compil : si tu as 20 compils de 12 titres chacune en moyenne, tu auras donc 20*12=240 lignes dans la table)

J'ai mis un 'id_dj' dans une compilation, mais il faut voir si c'est sous le nom d'un DJ que c'est fait, ou dans le cadre d'un project (auquel cas tu mettras plutot un id_project)...

J'ai rien mis sur les "Productions", parce que ca non plus je comprends pas trop... envoie les détails !
gbetous est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 08h50   #11
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Merci pour ces infos.

J'avavais déja fait ce genre de page en html à l'époque sur mon ancien site, les pages sont toujours dispo, tu peux avoir un aperçu de ce que ca peut donner...

http://kilkikou57.free.fr/artistes/dj_lee/djlee.htm

Voila en réalité ce que ca devrait donner...
Une page biographie, une page productions, une page remix, une page compilations...Donc c'est de cette manière que j'ai besoin d'organiser ma base de donnée...

Désolé mais la feuille de style n'est plus présente sur le serveur pour le site...

J'espère que ca t'en dit plus...
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 09h33   #12
Invité de passage
 
Inscription : avril 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 9
Points : 4
Points : 4
oui mais le but de la base de données c'est d'améliorer l'organisation des données, et de n'avoir l'information qu'à un seul endroit !

ces pages-là seront ensuite générées automatique, avec surement des hyper-lines (lorsque le dj 'x' fait une remix d'un titre du dj 'y', acces direct à la page du dj 'y' etc...)

en gros le travail ors de la création d'une BdD est toujours le meme :
- déterminer les entités (là, tu parles de 'dj', de 'compil', de 'titre', etc... c'est a chaque fois une nouvelle entité)
- déterminer les relations entre les entités (et la avec ton truc ca devient coton : le titre est ecrit par un 'dj' ou dans le cadre d'un 'project' ? peut-etre les 2 ?)
- déterminer les cardinalités : pour chaque relation, il faut savoir le nombre de relations possibles : un titre est ecrit par un et un seul 'dj' , ou alors par plusieurs 'dj' eventuellement ?
- ensuite seulement tu pourras créer tes tables, en fonction des relation et des cardinalités.

les 3 premiers étapes sont uniquement de la compréhension du domaine de la base : ici la création electro. un spécialiste de BdD ne pourra pas t'aider là dedans. par contre un amateur eclairé (toi) sera le seul à même de compléter ces étapes.

la dernière étape, ca c'est du vrai travail de BdD, mais c'est de loin le plus simple (qques règles à connaitre, et c'est tout).

donc je te propose d'y aller très proprement, petit à petit, je te poserai les questions au fur-et-à-mesure, pour bien que tu comprennes quelles sont le spossibilités que tu laisse de coté à chacun de tes choix (parce qu'il s'agit bien de ça : chaque choix limite les possiblités future, mais permet une utilisation plus simple de la BdD)

crée ta liste d'entités, avec a chaque fois les attributs (par exemple pour le dj, les attributs sont le nom et la biographie).

Exemple de limitation : Si tu dis qu'un dj a un nom, ca signifie qu'il n'en a qu'un, et que si il change de nom, ce sera en fait un dj différent dans ta base. Seules quelques lignes dans la biographie permettront de faire le lien (et tu devras au passage te recogner toute la biographie). A toi de savoir si il est courant de changer de nom chez les dj, ou si c'est un vrai sacrilège, qui fait que ca ne changera pas !
gbetous est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 09h59   #13
Invité de passage
 
Inscription : mai 2006
Messages : 53
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 53
Points : 3
Points : 3
Envoyer un message via MSN à kilkikou
Je sais que les pages sont générés automatiquement à partir des données contenus dans la base de données...Je vais essayer de faire ca, dès que possible car j'ai compris les démarches à effectuer pour en arrivée à quelque chose...Merci beaucoup pour toutes ces informations...
kilkikou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h35.


 
 
 
 
Partenaires

Hébergement Web