Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
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 15/12/2007, 18h07   #1
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Par défaut Je débute : aide à la conception

Bonjour,

Je suis étudiant et dans le cadre d'un cours d'informatique je dois mettre au point une base de donnée avec Access 2003. Je dois pouvoir créer les tables, les relations, les requetes, les formulaires, les etats, les pages et créer certains macro.

Mon idée est la suivante, créer une base de donnée regroupant toutes les données concernant les Grands Prix de Formule 1 depuis 1950. Le but ? Pouvoir accéder en quelques clics à des statistiques comme le nombre de grand prix gagnés par un pilote, le nombre de pole position, pouvoir mettre à jour les données sur les futures courses,... Comment me conseillez-vous de construire ma table ? Quelle doit-être la structure des relations ?

Je vous remercie d'avance pour votre aide précieuse ! J'ai juste besoin d'un petit coup de pouce pour savoir comment je dois commencer à mettre au point cette base de donnée, le reste ne devrait pas me poser de problème comme j'ai un cours et un livre "Access 2003 : Notions de base" de Renaud ALAGUILLAUME comme support.

[Benamour]
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 11h52   #2
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
En fait voici à quoi j'ai pensé :

TABLE : Pilote
- code pilote
- nom
- prénom
- date de naissance
- nationalité
- année de début en F1
- année de fin de carrière

TABLE : Ecurie
- code écurie
- pilote 1
- pilote 2
- date de création de l'écurie

TABLE : Grand Prix
- code grand prix
- date du grand prix
- circuit
- pilote vainqueur

TABLE : Pôle Position
- Code pole-position
- pilote en pôle

TABLE : Champion
- code champion
- pilote champion (ayant gagné le championnat du monde)
- année de la saison concernée


Et donc je pense a une relation en étoile avec la table PILOTE au centre. Et de la part toutes les relations de 1 à plusieurs vers les tables ecurie, grand prix, pole position et champion. Tout étant relié par le nom de famille du pilote. Qu'en pensez-vous ? C'est viable ? Dois-je raouter quelque chose ?
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 12h18   #3
Expert Confirmé
 
Avatar de FreeAccess
 
Homme
Inscription : mars 2006
Messages : 2 318
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mars 2006
Messages : 2 318
Points : 2 865
Points : 2 865
Bonjour,

Je pense qu'un peu de lecture t'apporterais un peu plus de précision:

http://mhubiche.developpez.com/Access/tutoJointures/

Bonne lecture...
__________________
FreeAccess
"Petit à petit l'araignée tisse sa toile"
FreeAccess est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 14h02   #4
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Merci. je viens de parcourir ton lien et son contenu est plus ou moins semblable au cours que mon prof nous a donné. Est-ce que les tables que j'ai donné précédemment te semblent viables ?
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 14h37   #5
Membre du Club
 
Inscription : novembre 2007
Messages : 115
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 115
Points : 50
Points : 50
Bonjour,
Je ne suis pas expert, je me permet quand même ce petit conseil :

Je crois qu'il y a deux tables qui devraient être supprimées.

1 - Suppression de la table Pôle-position et ajout du champ PiloteEnPôle dans la table GrandPrix
2 - Suppression de la table Champion et ajout d'un champ Oui/Non : ChampionDuMonde et d'un champ Date : DateChampionDuMonde dans la table Pilote.

Bon courage pour ton projet.
RootsRagga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h18   #6
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Merci pour ton conseil mais comment faire quand un pilote est plusieurs fois champions du monde ? Il vaut mieux faire une autre table pour ca, non ?
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h32   #7
Membre du Club
 
Inscription : novembre 2007
Messages : 115
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 115
Points : 50
Points : 50
Autant pour moi, tu as raison.

A moins que tu utilises la table Grandprix pour préciser le titre obtenu par le vainqueur de la course. Ca te permet de récupérer facilement la date et l'écurie.
RootsRagga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h35   #8
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
j'ai un problème avec l'écurie en fait. Comment faire pour correspondre deux pilotes à une écurie ? Et pouvoir par la suite mettre à jour facilement les informations concernant une écurie (comme les deux pilotes changent souvent...).
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h35   #9
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
Bonjour

En effet je crois que la table T_Champion doit exister de meme qu'une table T_Courses qui permettra de suivre tous les résultats de chaque pilote

TABLE : T_Pilote
- CodePilote
- NomPilote
- PrenomPilote
- DateNaissance
- Nationalite
- DebutF1
- FinCarriere

TABLE : T_Ecurie
- CodeEcurie
- CodePilote1
- CodePilote2
- DateCreationEcurie
- NomEcurie
- NationaliteEcurie

TABLE : T_GrandPrix
- CodeGP
- Circuit
- PaysGP

TABLE : T_Courses
- CodePilote
- DateCourses
- PolePosition (Vrai/Faux)
- PositionArrivee

TABLE : T_Champion
- CodePilote
- AnneeChampion
- NbrePoints


Je me suis permis de reprendre tes noms de champs afin d'harmoniser le champ CodePilote. D'autre part, évite les accents et les espaces dans les noms de champs

Voilà une autre piste à visiter

Bon courage
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h37   #10
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
Re,

J'ai hésité sur une table T_PiloteEcurie qui en fait contiendrait 3 champs

TABLE : T_PiloteEcurie
- CodeEcurie
- CodePilote
- SaisonGP
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h54   #11
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Mais il faut deux CodePilote pour T_PiloteEcurie comme il y a pour chaque saison 2 pilotes par écurie, non ? Est-ce que deux relations peuvent partir de la table T_PiloteEcurie vers le CodePilote de la table T_Pilote ?

je ne pense pas faire une table TABLE : T_Courses car sinon, je vais devoir encoder tous les résultats de tous les pilotes pour toutes les courses depuis 1950... et je dois dire que je manque un peu de temps ^^
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 15h57   #12
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
En effet tu auras deux enregistrements pas Ecurie
Quant à la table des Courses, je disais çà pour être un peu plus complet, c'est toi qui gère !
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 16h00   #13
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Oki, merci pour tous ces conseils !!! Grâce à vous je pense pouvoir commencer à mettre au point ma base de données :p
Je vais essayer de construire toutes mes tables avec toutes les relations puis poster ça sur le forum afin que vous puissiez donner votre avis sur la viabilité de ma base, merci beaucoup !!
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2007, 18h41   #14
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
je suis bloqué concernant les relations pour associer à une écurie deux pilotes en fonction de l'année (comme les pilotes changent parfois d'écurie d'une année à l'autre).

Voici ce que j'ai :



Quelqu'un sait-il comment je dois procéder pour la relation ?

Merci !!
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 12h58   #15
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
Je crois que tu n'as pas bien compris mon post. En fait tu as UN SEUL CHAMP CodePilote dans la table T_EcuriePilote. Cependant cette table contiendra deux enregitrements (2 lignes) par ecurie.

Je ne comprend pas pourquoi tu as renommé les champs en ajoutant un Prefixe (P/C/E/EP). Tu vas te compliquer la vie pour la suite

Au passage regarde ce tuto
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 17h46   #16
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Merci! Est-ce que tu peux vérifier si mes nouvelles relations sont bonnes ?



Concernant les noms des champs avec "P_" "E_" ... c'est parce que j'ai lu dans le "Microsoft Access 2003 : Notions de base" de Renaud Alaguillaume que des noms comme Date ou Nom peuvent être à un moment inopportun, interprétés comme des mots-clés Access (Nom étant le nom du formulaire ou de l'état en cours et Date, la date du jour). Donc c'est pas mieux ?

Merci beaucoup pour votre aide à tous !!!
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2007, 15h50   #17
Invité de passage
 
Étudiant
Inscription : décembre 2007
Messages : 12
Détails du profil
Informations personnelles :
Âge : 24

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2007
Messages : 12
Points : 2
Points : 2
Envoyer un message via MSN à Benamour
Voila ce que donne mes relations :



Est-ce que vous voyez des erreurs ? Ou je peux entamer les requêtes ? ^^
Benamour est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2007, 08h37   #18
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
Bonjour,

A propos des noms de champs :

Ce que tu as lu est tout à fait vrai, c'est pour cela que l'on conseille de qualifier les champs qui risquent de générer des ambiguités
Exemple :
pour Nom mettre NomPilote
Pour Année mettre AnneeGP (en effet, Année est une fonction de calcul)

A propos de tes relations :

Les clés primaires dans les tables T_GrandPrixPilotes et T_EcuriesPilotes ne sont pas obligatoires. Ce sont des tables de jointures entre T_GrandPrix et T_Pilotes ou entre T_pilotes et T_Ecuries (C'est à dire des tables qui permettent de résoudre un problème de relations de plusieurs à plusieurs

Bonne continuation
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h16.


 
 
 
 
Partenaires

Hébergement Web