Académique Documents
Professionnel Documents
Culture Documents
Objectifs :
Créer les tables d'une base de données à l'aide SQL Server Management Studio.
Interroger la base de données par des requêtes simples.
Etape1:
Création de la base de données "Gscol" de même structure physique que "Test01" créer dans le TPN°2.
Etape2:
La base de données gestion de scolarité permet le suivi des stagiaires, elle contient entre autre :
Une table « Stagiaire » : répertoriant les informations des stagiaires de l’institut.
Une table « Section » : une section peut contenir un ou plusieurs stagiaires.
Une table « Module » : représente les modules enseignés dans l’institut.
Une table « Note » : chaque stagiaire possède une note (Note_D1, Note_D2, Note_Ex) pour un module
donné.
La table Stagiaire
La table Section
La table Module
1
Spécialité : INF ’Base de données’ Implémentation - SQL Server 2008
La table Note :
Travail à faire :
1. Création de la base de données "Gscol".
2. Création tables et saisie des enregistrements :
Création des tables correspondantes, Pour cela:
Dans SQL Management Studio, développer la base de données "Gscol"
Puis créer les tables : Stagiaire, Module, Section et Note.
Saisie des enregistrements. (8 pour la table stagiaire et 4 pour les autres tables)
(Clique droit sur la table correspondantes /modifier les 200 lignes du haut/ et saisissez dans la
grille).
Table Section
Nom_Sec Code_Sec
Informatique A
Comptabilité B
GRH C
Marketing D
Table Stagiaire
La table Module
2
Spécialité : INF ’Base de données’ Implémentation - SQL Server 2008
La table Note :
5. Créer une vue permettant d’afficher les notes d’examen des stagiaires avec leur matricule et
désignation module.
3
Spécialité : INF ’Base de données’ Implémentation - SQL Server 2008
6. Créer une vue permettant d’afficher la moyenne modulaire de chaque stagiaire de la façon
suivante :
B. Une procédure Supp2_St qui permet de supprimer un stagiaire avec les conditions suivantes :
Ne rien faire si le matricule est incorrect ou inexistant (afficher un message).
Sinon afficher le message « les notes du stagiaire ne sont pas encore saisis » si le stagiaire n’existe
pas dans la table Note et il existe dans la table « stagiaire ».
Supprimer le stagiaire de la table « Stagiaire » si le stagiaire existe dans la table « Note » mais il ne
possède aucune note, les trois notes sont non remplies (null). (Pour tous les modules enseignés) (le
stagiaire sera supprimé automatiquement de la table « Note » puisque les deux tables sont reliées en
cascade).
C. Une procédure Supp_Sec Supprimer une section avec les conditions suivantes :
Ne rien faire si le Code_Sec est incorrect et afficher un message.
Afficher le nombre de stagiaires de la section si elle contient des stagiaires.
Supprimer la section si elle est vide (aucun stagiaire n’appartient à cette section).
6. Ecrire et exécuter les fonctions suivantes :
Une fonction Nbr_St qui retourne le nombre de stagiaires d’une section donnée passées en
paramètre (code section).
Une fonction qui permet d’afficher la liste des stagiaires où l’âge est inférieur à un âge (AG) passé
par paramètre.
Une fonction Stat_St qui retourne le nombre de stagiaires garçons (sexe G) et le nombre de
stagiaires filles de (sexe F) d’une section donnée passées en paramètre (code section).
Une fonction Affich_type_sec qui permet d’afficher si une section est de type « G, M ou P» :
- Type G (Grande) : Si le nombre des stagiaires est > à 50.
- Type M (Moyenne) : Si le nombre des stagiaires est compri entre à 50 et 30.
- Type P (Petite) : Si le nombre des stagiaires est < à 30.
Une fonction Moy_st_md qui retourne la moyenne d’un stagiaire donné passé en paramètre
concernant un module donné passé en paramètre.
Sachant que (Moyenne = (Note_d1+note_d2+note_ex*2) /4).
7. Créer les déclencheurs suivants :
Un déclencheur qui permet d’insérer automatiquement la date d’inscription (Dat_ins) d’un
stagiaire après insertion.
4
Spécialité : INF ’Base de données’ Implémentation - SQL Server 2008
Un déclencheur qui permet d’afficher automatiquement l’observation dans la table Note après
insertion ou modification des notes d’un stagiaire (Note_D1, Note_D2, Note_Ex) :
1. OBS=’ OK’ si la moyenne du module est >=10
2. OBS=’Rattrapage’ si la moyenne du module est <5
3. OBS=’A vérifier’ si la moyenne du module est comprise entre 5 et 10
Utiliser la fonction Moy_st (fonction de type scalaire qui retourne la moyenne d’un stagiaire
donné passé en paramètre concernant un module donné passé en paramètre).
8. Les curseurs : en utilisant les curseurs créer et exécuter les scripts suivants :
Un script qui permet d’afficher les stagiaires âgés plus de 20 ans.
Un script qui permet d’afficher les stagiaires de la section ‘A’, ainsi le nombre (sans utiliser la
fonction count).