TP m106 0404 624d9b2f731c9
TP m106 0404 624d9b2f731c9
TP m106 0404 624d9b2f731c9
45 heures
SOMMAIRE 1. Concevoir une base de données
• Analyser le cahier de charges
• Modéliser les données
• Normaliser les données
2. Préparer l’environnement
• Exploiter un outil de modélisation
• Préparer le serveur MySQL
1 2 3 4 5
LE GUIDE DE LA VERSION PDF DES CONTENUS DU CONTENU DES RESSOURCES
SOUTIEN Une version PDF TÉLÉCHARGEABLES INTERACTIF EN LIGNES
Il contient le est mise en ligne Les fiches de Vous disposez de Les ressources sont
résumé théorique sur l’espace résumés ou des contenus consultables en
et le manuel des apprenant et exercices sont interactifs sous synchrone et en
travaux pratiques formateur de la téléchargeables forme d’exercices asynchrone pour
plateforme sur WebForce Life et de cours à s’adapter au
WebForce Life utiliser sur rythme de
WebForce Life l’apprentissage
17 heures
ACTIVITÉ n°1
Lire et analyser un cahier de charges
Compétences visées :
04 heures
CONSIGNES
Pour le formateur
• Demander de dégager le contexte et le but du projet
• Demander d’énumérer les différentes liaisons entre les éléments de données
• Suivre la même méthodologie pour les deux cas d’étude
Pour l’apprenant
• Définir le but et le contexte du cas d’étude
• Distinguer entre les différents éléments de données
• Se repérer toujours avec les règles de gestion
• Suivre la même méthodologie pour les deux cas d’étude
Conditions de réalisation
• Support de résumé théorique
Critères de réussite
• Le stagiaire est-il capable de :
➢ Comprendre la nature du problème ?
➢ Décortiquer le problème en des sous-problèmes ?
➢ Suivre la méthodologie proposée pour atteindre l’objectif?
Activité n°1 :
Lire et analyser un cahier de charges
2. Enumérer les règles de gestion exprimées par le document date de naissance type de cours
• Un étudiant peut être inscrit dans plusieurs sessions de formations
code formation nom spécialité
• La formation peut se tenir en plusieurs sessions.
• Un étudiant ne peut pas être inscrit en plusieurs sessions de la titre formation nom session
même formation
durée date début session
PARTIE 1
permet de coordonner les compétitions de ses chevaux. Chaque cheval n’a qu’un propriétaire à un instant donné mais il peut en changer plusieurs fois et l’on souhaite
connaître cette évolution, ainsi que le prix qui a été fixé pour chaque transaction.
• On note le poids et la taille de chaque cheval chaque mois. Prénom MèreCheval Fonction
• Chaque cheval appartient à une race
PoidsType Couleur Nom
• Chaque cheval a un père et une mère
• Chaque cheval a un éleveur Propriétaire Mois DateAchat
PARTIE 1
Compétences visées :
Recommandations clés :
08 heures
CONSIGNES
1. Pour le formateur :
• Demander de suivre la méthodologie décrite dans le cours pour
résoudre un exercice
2. Pour l’apprenant :
• L’adoption de la méthodologie est nécessaire pour la modélisation
3. Conditions de réalisation :
• Support de résumé théorique
• Utiliser un outil de réalisation de Modèles MCD (https://gitmind.com/fr/)
4. Critères de réussite :
• Le stagiaire est-il capable de :
➢ Appliquer les règles de gestion?
➢ Élaborer le graphe DF?
➢ Construire un MCD?
Activité n°2 :
Dictionnaire de données et GDF
nom spécialité
nom session
date début session
date fin session
Un étudiant peut être inscrit dans plusieurs sessions Un élément de l’entité étudiant peut être associé à
de formations plusieurs éléments de l’entité formation
La formation peut se tenir en plusieurs sessions. Un élément de l'entité formation peut être associé à
plusieurs éléments de l’entité Session
Un étudiant ne peut pas être inscrit en plusieurs Un élément de l’entité étudiant ne peut être associé qu’à
sessions de la même formation une combinaison ( Session, Formation)
Une session n’est ouverte que s’il y a plus de 10 Le statuts de la session prend la valeur « Ouverte » si le
étudiants inscrits. nombre d’inscriptions est >= 10
PARTIE 1
Une formation peut faire partie de plusieurs Un élément de l’entité formation peut être associé à
spécialités plusieurs éléments de l’entité spécialité
Place Race
PèreCheval MèreCheval,
Supérieur NbreParticipants.
Eleveur
Une personne a une fonction Chaque élément de l’entité Personne possède un attribut fonction
Chaque élément de l’entité Personne peut être lie à un autre élément de la même entité.
Chaque personne a un supérieur
(son supérieur)
Chaque élément de l’entité cheval est lié à une entité croissance ou sont poids et sa taille
On note le poids et la taille de chaque cheval chaque mois.
son saisie chaque mois.
Chaque cheval appartient à une race Chaque élément de l’entité cheval est lié à un élément de l’entité race
Chaque élément de l’entité cheval est lié à deux éléments différents de la même entité :
Chaque cheval a un père et une mère
un ( père) et une (Mère)
Chaque cheval a un éleveur Chaque élément de l’entité cheval est lié à une élément de la table personne (éleveur)
PARTIE 1
Chaque élément de l’entité cheval est lié à un ou plusieurs éléments de l’entité personne
Chaque cheval a un propriétaire et on connait ses anciens propriétaires
(propriétaire)
Un cheval participe aux concours et obtient une place Un élément de l’entité cheval peut être lié à plusieurs éléments de l’entité concours
Les mêmes concours se déroulent chaque année On identifie l’entité concours par le nom du concours et l’année
Exercice 4 : « Hollywood »
• Un audit sur les stars de cinéma a été programmé au profit d’une société de production afin de connaitre leurs différentes productions et les cachets qu’elles
perçoivent. La Base de Données du système devra enregistrer les informations suivantes :
• Un acteur a un nom, un prénom, une date de naissance, un poids de référence et une taille ;
• Plusieurs acteurs peuvent avoir le même nom, mais on suppose qu’il n’y a pas d’homonymie sur le couple nom-prénom ;
• Les acteurs jouent dans des films ayant un titre, un réalisateur et un scénariste ;
• Un film a une année de mise en circulation précise la différenciant des remakes de chacun d’entre eux ;
• On veut pouvoir retrouver les remakes des films ;
• On estime qu’un film ne peut pas être le remake de plus d’un seul film ;
• Plusieurs producteurs, ayant un nom unique et une adresse, peuvent investir dans un film pour un certain montant ;
• Les acteurs jouent dans les films avec un salaire qui peut être perçu comme suit ;
• L’acteur reçoit un cachet défini et approuvé dès le départ ;
• L’acteur perçoit un pourcentage sur les ventes du film et les produits dérivés ;
PARTIE 1
Exercice 8 : « Hollywood »
• Rappel : Graphe des dépendances fonctionnelles Hollywood
PARTIE 1
Compétences visées :
Recommandations clés :
06 heures
CONSIGNES
1. Pour le formateur :
• Rappeler les règles de gestion et le MCD
• Donner de l’importance aux formes normales
• Donner une méthodologie pratique pour construire le MLD
2. Pour l’apprenant :
• Distinguer les différentes formes normales
• Adopter la méthodologie recommandée pour le passage du MCD au MLD
3. Conditions de réalisation :
• Support de résumé théorique
4. Critères de réussite :
• Le stagiaire est-il capable de :
➢ Comprendre la nature du problème ?
➢ Identifier les règles ?
➢ Construire le MLD ?
Activité n°3 :
Du MCD au MLD
→
INSCRIPTION (numCINEtu,codeSession,typeCours)
c) Cheval - Race :
• La clé primaire de la table RACE sera dupliquée dans la table Cheval
• Donc l’entité cheval devient comme suit :
→
CHEVAL(numCheval,nomCheval,numTatouage,couleurCheval,#numCheval_pere,#numCheval_mere,#nomRace)
e) Cheval - Eleveur :
PARTIE 1
a) Cheval - Propriétaire :
• Une nouvelle entité sera créée :
• PROPRIETAIRE (#numCheval, DateAchat, #numPers_pro ,Prix)
→
PARTIE 1
08 heures
ACTIVITÉ n°1
Préparer le serveur MySQL
Compétences visées :
Recommandations clés :
6,5 heures
CONSIGNES
1. Pour le formateur :
• Rappeler la nature de MySQL et e rôle de la station Workbench
• Rappeler la mission et les possibilités offertes par les services MySQL
• Scinder le groupe en sous-groupes pour les séances de travail
2. Pour l’apprenant :
• Savoir différencier entre les types d’installation offerts
• Bien configurer les ports
• Savoir gérer les services MySQL
3. Conditions de réalisation :
• Support de résumé théorique
• Ordinateur et l’Install MySQL
4. Critères de réussite :
• Le stagiaire est-il capable de :
➢ Installer les services MySQL ?
➢ Configurer les ports MySQL ?
➢ Construire le diagramme EER ?
Activité 1 :
Installation de l’outil: SQL SERVER + WORKBENCH
Exercice
Suivez les étapes décrites au cours théorique M106
• Lien vers la partie B1
• Lien vers la partie C1
PARTIE 2
Compétences visées :
Recommandations clés :
1,5 heures
CONSIGNES
1. Pour le formateur
• S’assurer que le matériel répond aux prérequis des séances programmées
• Faire un rappel du cours théorique
• Souligner l’importance des outils de modélisation pour les étapes futures
2. Pour l’apprenant
• S’entrainer à l’utilisation des outils de modélisation proposés
• Dessiner les MLD des exercices précédents
3. Conditions de réalisation
• Support de résumé théorique
• Ordinateur et l'Install de l’outil de modélisation workbench
4. Critères de réussite
• Le stagiaire est-il capable de :
➢ Utiliser Workbench?
➢ Créer des MLD sur Workbench?
Activité 2 :
Modéliser sur WORKBENCH
Exercice
Suivez les étapes décrites au cours théorique pour créer un diagramme EER relatif au MLD de l’exemple : « Chevaux d’écurie »
• Lien vers la partie B Chapitre 1 . 2
PARTIE 2
Solution
PARTIE 2
20 Heures
Activité 1
Créer une Base de Données
Compétences visées :
Recommandations clés :
08 heures
CONSIGNES
1. Pour le formateur
• S’assurer que le matériel répond aux prérequis des séances programmées
• Faire un rappel du cours théorique
• Faire un inventaire des moteurs et justifier le choix de MySQL
• Préparer les modèles réalisés dans la partie 1 du cours
2. Pour l’apprenant
• Préparer la station de travail
• Revoir la méthodologie soulignée dans le cours théorique
3. Conditions de réalisation :
• Support de résumé théorique
• Ordinateur et MySQL
• modèles réalisés dans la partie 1
4. Critères de réussite :
• Le stagiaire est-il capable de :
➢ Créer les BDD relatives à chaque scénario?
➢ Créer et manipuler les tables et colonnes ?
Activité 1 :
Créer une Base de Données
Exercice 1 :
1. Connectez-vous au serveur MySQL avec votre compte root créé lors de l’installation.
2. Affichez les bases de données actuellement disponibles sur le serveur à l'aide de l'instruction SHOW DATABASES.
3. Créez une base de données avec le nom : bdtest
4. Utilisez la commande SHOW CREATE DATABASE pour revoir la base de données créée.
5. Sélectionnez la base de données nouvellement créée en utilisant l'instruction USE.
6. Affichez les bases de données pour vérifier l’existence de la base bdtest.
7. Supprimez la base de données dbtest en utilisant la commande DROP DATABASE.
8. Tapez EXIT pour sortir du programme.
9. Effectuez les mêmes étapes sur Workbench.
PARTIE 3
2. SHOW DATABASES
5. USE bdtest
PARTIE 3
6. SHOW databases
8. Exit
PARTIE 3
3. Ajouter une contrainte NOT NULL sur la colonne typeCours de la table Inscription
4. Ajouter une contrainte CHECK dans la table SESSION : dateFin doit être toujours supérieure à dateDebut.
5. Ajouter une colonne « Active » sur la table SPECIALITE.
PARTIE 3
Remarque
• Cette colonne est un flag qui prend la valeur 1 si la spécialité est active, et 0 si elle ne l’est pas.
ON UPDATE NO ACTION)
ENGINE = InnoDB;
ENGINE = InnoDB;
Compétences visées :
Recommandations clés :
09 heures
CONSIGNES
1. Pour le formateur
• S’assurer que le matériel répond aux prérequis des séances programmées
• Faire un rappel du cours théorique
• Répertorier les différentes commandes relatives aux requêtes
2. Pour l’apprenant
• Préparer la station de travail
• Revoir la méthodologie soulignée dans le cours théorique
3. Conditions de réalisation :
• Support de résumé théorique
• Ordinateur et MySQL
4. Critères de réussite :
• Le stagiaire est-il capable de :
➢ Traduire les énoncés en requêtes SQL ?
➢ Réaliser les requêtes ?
Activité 2 :
Réaliser les requêtes SQL
ETUDIANT :
101 15
1401 F9827363 Distanciel
103 13 1501 AB234567 Distanciel
104 13 1501 G5346789 Présentiel
1501 C0987265 Distanciel
104 14
1501 D2356903 Présentiel
104 16 1501 Y1234987 Présentiel
1501 J3578902 Présentiel
1501 F9827363 Presenciel
(13,'Anglais technique',15,3750),
(14,'Communication',10,2500),
(15,'Base de données Oracle',20,6000),
(16,'Soft skills',12,3000);
(1602,'Session 1602','2022-10-14','2022-10-26',16),
(1104,'Session 1104','2022-10-15','2022-10-27',11),
(1203,'Session 1203','2022-11-16','2022-11-30',12),
(1204,'Session 1204','2022-12-17','2022-12-31',12);
(1101,'G5346789','Distanciel'), (1501,'AB234567','Distanciel'),
(1101,'C0987265','Distanciel'), (1501,'G5346789','Presenciel'),
(1101,'D2356903','Distanciel'), (1501,'C0987265','Distanciel'),
(1501,'D2356903','Presenciel'),
(1101,'Y1234987','Distanciel'),
(1501,'Y1234987','Presenciel'),
(1101,'J3578902','Distanciel'), (1501,'J3578902','Presenciel'),
(1101,'F9827363','Distanciel'), (1501,'F9827363','Presenciel');
SOLUTION :
• Copier et coller le contenu du fichier sur une tab script sur Workbench. Exécuter le script.
PARTIE 3
Master Bac+ 5
Bachelor Bac+ 4
Phd Doctorat
4. Il y a eu une erreur lors de l’inscription de l’étudiant dont le nom est « Alami », sa date de naissance est le 02 Janvier 1987, et il est de la ville de Kenitra.
5. L’étudiante Aicha souhaite rendre tous ses cours en distanciel.
from inscription
group by codeSess,typeCours;
sessions
Compétences visées :
Recommandations clés :
03 heures
CONSIGNES
1. Pour le formateur
• S’assurer que le matériel répond aux prérequis des séances programmées
• Faire un rappel du cours théorique
• Répertorier les différentes commandes relatives à l’importation, back-up
et exportation
• Rappeler le concept comptes et privilèges
2. Pour l’apprenant
• Préparer la station de travail
• Revoir la méthodologie soulignée dans le cours théorique
3. Conditions de réalisation :
• Support de résumé théorique
• Ordinateur et MySQL
4. Critères de réussite :
• Le stagiaire est-il capable de :
• Faire les requêtes ?
• Assimiler le concept gestion comptes, droits et privilèges ?
Activité 3 :
Administrer une Base de Données
2. Ouvrir le fichier C:\backup\chevauxdecurie.sql : Chercher dans le code les definitions de tables de la base.
PARTIE 3
SOLUTION :
• Suivre les étapes expliquées dans le cours. (Partie 3 Chapitre 3. 2 et 3)
PARTIE 3
GRANT ALL
CREATE USER User4@localhost Tous les privilèges sur la base de
User3 ON mycompany.*
IDENTIFIED BY ' Modep@sse4' donnees mycompany.
TO user3@localhost;
PARTIE 3
GRANT UPDATE
UPDATE sur la table orders de la base
User 4 ON mycompany.orders
2. Select user from mysql.user; de données « mycompany »
TO user4@localhost;
3. Voir tableau ci-après
5.
User: User4@localhost
Password: Modep@sse3
6. 8.
REVOKE DELETE
ON mycompany.*
Use mycompany;
FROM user3@localhost;
UPDATE ORDERS
PARTIE 3