OVH Cloud OVH Cloud

TABLES (Conception)

2 réponses
Avatar
Moh
Bonjour,
j'ai la regle de gestion suivante:

1 classe est encadre par 1 seul prof pour 1 matiere donnee
et 1 annee scolaire donnee.

Selon ma conception j'ai les tables suivantes:

*: cle primaire, #: cle etrangere
Profs(*Code*, #Code matiere#, ...)
Classe(*Code*, ...)
Matiere(*Code*, ...)
AffectationProfsClass(*Code class, code matiere*, #code
prof#, an sco)

Le cas suivant pose prob:
Un enseignant encadre la meme classe pour l'annee suivante
ex:
1f1, m01, 1, 2001
1f1, m01, 1, 2002
Access signale une redondance. Qu'elle est la solution?

2 réponses

Avatar
mouly
"Moh" écrivait news:158a01c4dad3$6d3a52f0
$:

1 classe est encadre par 1 seul prof pour 1 matiere donnee
et 1 annee scolaire donnee.
Selon ma conception j'ai les tables suivantes:
*: cle primaire, #: cle etrangere

AffectationProfsClass(*Code class, code matiere*, #code
prof#, an sco)

Le cas suivant pose prob:
Un enseignant encadre la meme classe pour l'annee suivante
ex:
1f1, m01, 1, 2001
1f1, m01, 1, 2002
Access signale une redondance. Qu'elle est la solution?



dans ta table AffectationProfsClass, tu ne peux pas definir comme cle
primaire 'code class', ni meme 'code matiere' ni aucune autre clef
etrangere.
soit tu definis uen colonne ID_Affectation (code affectation dans ton
jargon), soit tu definis une clef primaire multicolonnes

la seconde possibilité permettant à Access de surveiller à ta place
l'unicité des affectations par prof,classe et année




--
mouly
mouly2 at yahoo dot com

Avatar
Olivier
Table Classe
Table Professeur
Table Matière
Table Année.

Il te faut poser "LA QUESTION",

Est-ce qu'un enregistrement de la table X peut avoir une relation avec
plusieurs enregistrements avec la table Y et est-ce 1 enregistrement de la
table Y peut avoir une relation avec plusieurs enregistrements de la table
X.
Si tel est le cas, il te faut "casser" cettre relation par une table
intermédiaire pour que le résultat soit
Table X <-> Table Intermédiaire Z (relation 1 à N)
Table Y <-> Table Intermédiaire Z (relation 1 à N)

Ex:

Relation :
- Table Classes
- Table Professeurs
Relation N à N (puisqu' une Classe peut avoir plusieurs Professeurs et
qu'un professeur peut avoir plusieurs Classes) Hormis la Matière enseignée.

- Table Professeurs
- Table Matières
Relation N à N (puisqu'un Professeur peut enseigner plusieurs Matières
et qu'une Matière peut être dispensée par plusieurs Professeurs) Hormis
l'année

etc....

Il te faut donc "casser" toutes ces relations pour n'avoir qu'entres elles,
une relation 1 à N et ta tâche en sera plus facilitée.

@+
Olivier



"Moh" a écrit dans le message de news:
158a01c4dad3$6d3a52f0$
Bonjour,
j'ai la regle de gestion suivante:

1 classe est encadre par 1 seul prof pour 1 matiere donnee
et 1 annee scolaire donnee.

Selon ma conception j'ai les tables suivantes:

*: cle primaire, #: cle etrangere
Profs(*Code*, #Code matiere#, ...)
Classe(*Code*, ...)
Matiere(*Code*, ...)
AffectationProfsClass(*Code class, code matiere*, #code
prof#, an sco)

Le cas suivant pose prob:
Un enseignant encadre la meme classe pour l'annee suivante
ex:
1f1, m01, 1, 2001
1f1, m01, 1, 2002
Access signale une redondance. Qu'elle est la solution?