[Résolu][Base] Gestion orchestre et école de musique

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur : Vilains modOOs

Clément054
NOOuvel adepte
NOOuvel adepte
Messages : 22
Inscription : 24 nov. 2016 13:03

[Résolu][Base] Gestion orchestre et école de musique

Message par Clément054 »

Bonjour à tous,

Je suis nouveau sur ce forum et avant toute chose, j'aimerais dire qu'il est super ! Merci à ceux qui le font vivre !

Je viens vers vous aujourd'hui car j'ai pour projet de mettre en place une base de donnée pour la gestion des adhérents, élèves et du matériel de l'association dont je suis trésorier.
Il s'agit d'une association qui gère un orchestre d'harmonie et une école de musique qui dispense des cours de solfège et d'instruments, et nous louons également certains instruments que nous possédons.

J'ai déjà créé les tables et les relations entre elles mais je ne suis pas sûr de moi. J'ai appris à utiliser Acces en cours mais c'était plus porté sur l'utilisation (faire des requêtes, des états, formulaires, etc) que sur la création d'une BDD en elle-même.

Voici les différentes règles de gestions :
- les musiciens de l’orchestre sont adhérents de l'association
- par défaut les élèves de l'école de musique ne le sont pas, sauf s'ils le demandent
- un musiciens de l'orchestre peut également être élève de l'école de musique (instrument et/ou solfège)
- je souhaite pouvoir garder un historique sur plusieurs années des inscriptions et des adhérents
- la liste du matériel est mise à jour à chaque inventaire
- il y a différents types de matériel :les instruments qui peuvent être loués, les instruments qui ne le peuvent pas, et des accessoires (sono, amplis, etc)
- les instruments peuvent être loués par les musiciens de l'orchestre et par les élèves de l'école
- chaque location est payante

Je pense avoir dit le plus important.

Voici une capture des tables et relations entre elles
Photo projet.jpg
Je vous joint également le fichier que j'ai créé.

Ma question est donc simple : est-ce que j'ai bien fait ?
Je veux dire que, comme c'est la première fois que je m'occupe de la création d'une base de donnée, je voudrais être sûr que les fondations sont bonnes avant d'aller plus loin.
Les relations (1;n) entre les clés primaires et secondaires se sont mise automatiquement, je ne sais pas comment les changer, ni ce qu'il faudrait mettre à la place.

D'avance un grand merci à vous !

Bonne journée,
Clément
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Clément054 le 29 nov. 2016 17:28, modifié 1 fois.
Windows 7 ; OpenOffice 4.1.3
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16959
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: [Base] Relation entre des tables

Message par jeanmimi »

Bonjour,
Je n'ai pas la possibilité de tester ta bdd sur mon téléphone.
J'aurai plutôt mis Id_eleve et Id_adherent dans la table Location pour faire les relations.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Base] Relation entre des tables

Message par Piaf »

Bonjour
Pourquoi une table Adhérents et une table Élèves avec tant de champs communs ?
A priori une seule table Personnels devrait suffire en ajoutant un champ pour déterminer s'il est Adhérent, Élève ou quoi que ce soit.
Si les personnels peuvent avoir plusieurs statuts, prévoir une relation de un à plusieurs entre une table Personnels et statuts.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Clément054
NOOuvel adepte
NOOuvel adepte
Messages : 22
Inscription : 24 nov. 2016 13:03

[Base] Relation entre des tables

Message par Clément054 »

Bonjour,

Merci de vos réponses.

jeanmimi : qu'est-ce que ça apporterait de mettre les ID dans la table location ?

Piaf : ça serait peut-être plus simple de faire comme ça en effet, mais le truc, c'est que nos statuts prévois qu'un adhérents puissent être soit élèves de l'école, soit musiciens de l'orchestre, soit les deux, soit aucun des deux. Du coup je ne suis pas vraiment sûr de se qu'il faut faire pour traduire ça dans la BDD de manière simple et efficace. Des conseils pour ça ?
Mon idée, c'est que comme la nature des membres est assez différentes, il m'est apparu logique de différencier chaque type de membre dans deux tables séparées.

Merci à vous,
Clément
Dernière modification par Clément054 le 19 juin 2017 17:38, modifié 1 fois.
Windows 7 ; OpenOffice 4.1.3
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Base] Relation entre des tables

Message par Piaf »

Bonjour
Le plus simple à mon avis, pour ne pas multiplier les relations, serait d'ajouter un champ Statut.
Dans le formulaire, une liste déroulante (comprenant les différents statuts) permettrait de le sélectionner.
form.png
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Clément054
NOOuvel adepte
NOOuvel adepte
Messages : 22
Inscription : 24 nov. 2016 13:03

Re: [Base] Relation entre des tables

Message par Clément054 »

Bonjour,

Je comprend, mais du coup est-ce que ça ne va pas rajouter de la complexité au moment de faire les requêtes ?

Clément
Windows 7 ; OpenOffice 4.1.3
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Base] Relation entre des tables

Message par Piaf »

Bonjour
Clément054 a écrit :rajouter de la complexité au moment de faire les requêtes ?
Tout dépend ce que tu appelles complexité :lol:
Une requête de sélection des personnels ayant Élève dans leurs statuts
R1.png
Une requête de sélection des personnels n'ayant qu’Élève dans leur statut
R2.png
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Clément054
NOOuvel adepte
NOOuvel adepte
Messages : 22
Inscription : 24 nov. 2016 13:03

Re: [Base] Relation entre des tables

Message par Clément054 »

Bonsoir,

Désolé de ma réponse tardive, c'est une période chargée en ce moment...

Je comprend, merci de ta réponse. Voici donc la base avec les modifications que vous m'avez suggérées.
Photo projet.jpg
J'ai encore quelques questions si vous voulez bien continuer à m'aider.

Concernant les règlements de cotisations des adhérents et élèves je me demande s'il faut que je crée une table spécifique ou non. La plupart des élèves de l'école de musique sont des enfants et les cotisations sont payées par les parents, avec celles des frères et sœurs. Du coup, pour vérifier les paiements ça complique tout puisqu'il faut raisonner par famille plutôt que par individu. Comme puis-je traduire ça dans ma BDD ?

Également, concernant les instruments, il arrive que certains professeurs (qui sont salariés) empruntent des instruments pour leurs cours ou des événements exceptionnels. J'aimerais pouvoir garder une trace de cela, histoire qu'il n'y ait pas d'abus ou d'oublis. Est-ce qu'il est judicieux de créer une table spécifique pour cela ? Ces emprunts sont gratuits ; c'est une forme d'avantage offert à nos salariés.

Enfin, il est fréquent de faire réviser (et réparer quand nécessaire) les instruments que nous avons. Ici aussi, j'aimerais garder une trace de cela. Même question : est-ce qu'il faut créer une table pour ça ? Ma première idée est de dire que non, un simple champ "date_revision" par exemple pourrait suffire, mais il est possible qu'un même instrument soit réviser plusieurs fois, du coup je vois pas trop comment faire sans créer une ligne par révision...

Merci à vous,

Clément
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Windows 7 ; OpenOffice 4.1.3
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Base] Relation entre des tables

Message par Piaf »

Bonjour
Clément054 a écrit :il faut raisonner par famille plutôt que par individu
Tu peux jeter un œil sur [Base] Gestion d'Association le fil date un peu, mais ça peut te donner des idées.
Pour les emprunts, tu pourrais soit : créer une table spécifique, soit utiliser la table location en l'adaptant éventuellement.
Pour les révisions/réparations, je pense qu'une table spécifique serait utile, en relation un à plusieurs avec la table matériel.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Clément054
NOOuvel adepte
NOOuvel adepte
Messages : 22
Inscription : 24 nov. 2016 13:03

[Base] Gestion orchestre et école de musique

Message par Clément054 »

Bonsoir,

Merci Piaf, je vais me pencher dessus quand j'aurais un peu plus de temps et je reviendrais vers vous.

Merci à vous,
Clément
 Ajout : Au 15/01/2019
Aucune nouvelle de l'auteur depuis plus de 2 ans : le projet est déclaré résolu. 
Windows 7 ; OpenOffice 4.1.3