OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SPECIALISE DE GESTION ET D'INFORMATIQUE MARRAKECH
TP 7
Exercice 1 :
Partie 1 :
1. Créez la base de données Universite avec l'encodage utf8mb4.
2. Tables à créer :
o Etudiants : etudiant_id (PK,
AUTO_INCREMENT), nom, prenom, date_naissance, nationalite, email
(UNIQUE), date_inscription (DEFAULT CURRENT_DATE).
o Cours : cours_id (PK), titre (UNIQUE), credits (CHECK >= 1 AND <= 6), professeur_id (FK).
o Professeurs : professeur_id (PK), nom, prenom, specialite, date_embauche (NOT NULL).
o Inscriptions : inscription_id (PK), etudiant_id (FK), cours_id (FK), annee, note (CHECK
BETWEEN 0 AND 20).
o Departements : departement_id (PK), nom, budget (CHECK > 0), responsable_id (FK vers
Professeurs).
Partie 2 :
1. Affichez les étudiants ayant une note moyenne supérieure à 15, avec leur nationalité et le nombre de
cours suivis.
2. Trouvez les cours dont la note moyenne est inférieure à la moyenne générale de tous les cours.
3. Listez les professeurs qui enseignent dans plus d’un département (via les cours associés).
4. Affichez les étudiants n’ayant jamais échoué à un cours (note >= 10) mais n’ayant pas de note maximale
(20).
Partie 3 :
1. Mettez à jour le budget des départements en réduisant de 10% celui des départements sans professeur
embauché après 2020..
2. Supprimez tous les cours n’ayant aucune inscription depuis 2021.
3. Ajoutez une colonne statut à Etudiants avec :
o "Actif" si inscrit à au moins 1 cours en 2023.
o "Inactif" sinon.
Exercice 2 :
Partie 1 :
Créer une base de données HopitalCentral avec les tables suivantes :
1. Medecins
1
OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SPECIALISE DE GESTION ET D'INFORMATIQUE MARRAKECH
• medecin_id (PK, AUTO_INCREMENT)
• nom, prenom, specialite, date_embauche (NOT NULL), salaire (> 0)
2. Patients
• patient_id (PK, AUTO_INCREMENT)
• nom, prenom, date_naissance, sexe, groupe_sanguin (A+, A-, etc.)
• date_inscription (DEFAULT CURRENT_DATE)
3. Consultations
• consultation_id (PK)
• patient_id (FK), medecin_id (FK), date_consultation, motif, diagnostic, prix (≥ 20)
4. Prescriptions
• prescription_id (PK), consultation_id (FK)
• medicament, duree_traitement (en jours), posologie
5. Services
• service_id (PK), nom, budget (> 10000), responsable_id (FK vers Medecins)
Partie 2 :
1. Pour chaque spécialité, afficher :
o le nombre de médecins
o le nombre total de consultations
o la moyenne des prix des consultations
2. Trouver les 3 patients ayant eu le plus de consultations.
3. Lister les patients n’ayant été consultés que par un seul médecin depuis leur inscription.
4. Identifier les médecins ayant prescrit au moins 5 médicaments différents à un même patient.
5. Afficher les patients ayant eu une consultation pour un "suivi" ou un "contrôle" sans prescription
associée.
Partie 3 :
1. Réduire de 10% le budget des services dont le responsable a effectué moins de 2 consultations en 2024.
2. Supprimer les prescriptions dont la durée de traitement est ≤ 2 jours et datant de plus de 3 ans.
3. Ajouter une colonne revenu_total à Medecins, et la remplir avec la somme des prix de leurs
consultations.