base de données problème de conception
-
16-10-2019 - |
Question
Ceci est ma première fois sur ce beau site riche en contenu. J'ai un serveur sql base de données 2008, mais je suis pas trop expérimenté avec une bonne conception de base de données relationnelle.
Mon projet est le suivant: J'ai une école qui a des étudiants. Les étudiants offrent des sujets qui sont classés sur une base termly dans une session. Il y a une session qui signifie 1 an et dans cette session, il y a 3 termes termes à savoir 1er, 2e et 3e. Chaque étudiant a un résultat / évaluation continue qui sont examinées sur une base termly en une seule séance (3 termes) dans une session. Comment puis-je concevoir la base de données de m pour englober tous ces détails, afin que je puisse vérifier les résultats ou le rendement par trimestre, dans les 3 termes et dans une session ou plus d'une session.
STUDENT TABLE
STUID|STUNAME|STUADDRESS
CONTINOUS ASSESSMENT TABLE
CAID| FIRST_CA(20) |SECOND_CA(20)| EXAM SCORE(60)|TOTAL SCORE|SUBJECTID|RANK|YEARID
SUBJECT TABLE
SUBJECTID |SUBJECT_NAME |SUBJECT DESCRIPTION
YEAR/SESSION/TERM TABLE
ID|YEAR|TERM|STATUS|FROM|TO
CLASS TABLE
CLASSID | CLASS_NAME | CLASS_TEACHER
DEMO QUERY
SELECT RESULT FROM CONTINUOUS ASSESSMENT WHERE STUDENT ID = ID
AND CLASS = CLASS5 AND TERM = 1ST TERM AND YEAR = 2012
OR
SELECT RESULT FROM CONTINUOUS ASSESSMENT WHERE STUDENT ID = ID
AND CLASS = CLASS5 AND TERM = 1ST TERM, 2ND TERM ,3RD TERM AND YEAR = 2012
Comment lier toutes ces tables pour exécuter avec succès cette requête?
La solution
Obtenir 4 morceaux de papier.
Sur la première pièce, créer 2 colonnes sur la page, StudentID, StudentName et écrire 1,2,3 pour les StudentIDs sous la colonne StudentID et faire quelques noms de cool comme « Dr Cheat » dans la colonne StudentName.
Sur le deuxième morceau de papier, créer 3 colonnes appelées StudentID, CLASSID Score et entrez 1,2,3 pour le StudentID et 1,1,1 pour le ClassID puis faire quelques scores - comme 100%, 99% , 0%.
Le 3 morceau de papier créer 2 colonnes - CLASSID Classname et entrez les valeurs 1, « Comment gagner en trichant »
Maintenant, pour comprendre les bases de données relationnelles, tout ce que vous devez faire est le 4 morceau de papier entrer dans les colonnes StudentID, StudentName, CLASSID ClassName, Score et renseigner les valeurs des autres 3 morceaux de papier.
Vous pouvez voir que vous avez 3 étudiants, et quelques notes, et certains noms de classe pour les scores -. L'exercice de les réunir dans ce 4ème morceau de papier est similaire à l'écriture d'une requête SQL
Chaque fois que vous vous trouvez maintenant 2 morceaux de papier ensemble et regarder en arrière et en avant entre les 2 pièces pour trouver des valeurs correspondant à - la colonne que vous correspondant sur est votre colonne de jointure.
C'est la conception de base de données relationnelle.