Base de données 1

Base de données 1


7.2- Exercices

Laboratoire 4

Mettre en place la base de données et modifier le projet de départ pour intégrer les requêtes SQL nécessaires au fonctionnement de l'application Monovox permettant de gérer le fonctionnement des cours dans un établissement d'enseignement:

Mise en place du projet

Installer l'interpréteur PHP

bash
copier
su root -c "apt update && apt install -y php php-mysql zip unzip"

Récupérer le projet de départ, en usager STANDARD

bash
copier
wget -O monovox.zip {URL CI-DESSUS}

unzip monovox.zip

Et finalement démarrer l'application, qui sera accessible via un navigateur web http://a.b.c.d:8080 selon l'IP de votre machine virtuelle

bash
copier
cd monovox

./run.sh

Puis, l'opération inverse pour effectuer votre remise

bash
copier
zip remise.zip -r monovox/

Méthodologie

Base de données

Les tables en gris sont fournies dans le projet de départ. Les données de ces tables sont fournies périodiquement par un autre système, Monovox ne les manipule qu'en lecture seulement. Les tables assignments et grades sont à implémenter et appartiennent à Monovox.

teachers

Les enseignants de l'établissement qui peuvent accéder au système via leur numéro d'employé et un mot de passe.

students

Les étudiants de l'établissement qui peuvent accéder au système via leur numéro d'étudiant et un mot de passe.

courses

Les sujets pouvant être enseignés.

groups

Un groupe identifie le sujet d'un enseignant pour une session. Chaque groupe possède un numéro unique pour la même combinaison de session et cours. Un enseignant ne peut pas enseigner le même sujet plusieurs fois au même groupe dans une session.

classes

Une classe représente l'inscription d'un étudiant dans un groupe.

assignments

Un énoncé représente un travail demandé aux étudiants d'un groupe. Il est identifié par un nom, son poids dans la session(%), le nombre de points d'évaluation et la date d'échéance.

grades

Une note est le résultat d'un étudiant pour un travail.

Intégrité

assignments

grades

Relations

Mécanismes intéressants 👀

Remise

Dépôt via LÉA

Base de données 1

Nom:

Suivi 1, avant 28 novembre
Démarrage de l'application web 1     0
Création des tables assignments/grades, Données de départ 3     2.5     2     1     0
Requête 3, Affichage Web /pages/teachers/groups 2     1.5     1     0
Suivi 2, avant 12 décembre
Intégrité des assignments/grades 1     0.5     0
Requête 5, Affichage Web /pages/teachers/assignments 2     1.5     1     0
Requête 9, Affichage Web créer assignment 2     1.5     1     0
LIVRAISON
Remise
Zip et dossier complet 0     -1     -2
Qualité de rédaction 0     -0.5     -1     -2
Qualité de l'implémentation 0     -0.5     -1     -2
Exécution répétée lab.sql, delimiters 0     -0.5     -1     -2
Respect des identifiants de la base de données et de l'utilisateur 0     -1     -2
Tables
Création de la table assignments, colonnes, types, attributs, clés 2     1.5     1     0
Création de la table grades, colonnes, types, attributs, clés 2     1.5     1     0
Insertion de données de départ significatives, assignments et grades 2     1.5     1     0
Intégrité
assignments, Création du travail crée les notes 1     0.5     0
grades, Suppression du travail supprime les notes 1     0.5     0
Respect de la relation avec l'enseignant 2     1.5     1     0
Requêtes
03 $groups, students, tri code et number 2     1.5     1     0
05 $assignments, average, failed, filled, total, tri date 2     1.5     1     0
06 $assignments adjacents, average, tri date 2     1.5     1     0
07 $grades du travail, tri nom 2     1.5     1     0
08 $assignment, remaining_weight, gestion null si création 2     1.5     1     0
09 insert 2     1.5     1     0
10 update 2     1.5     1     0
11 delete 2     1.5     1     0
13 $grades, infos adjacentes(note, travail, cours, enseignant), résultat percent, average, tri code et date 3     2.5     2     1     0
via une View 2     1.5     1     0