Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cours 3 EG

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 34

3ème EG – Prof.

Sami MEJRI

Partie 1 : Gestion de données


Définitions :
Base de Données : c’est tout ensemble cohérent et intégré de données pouvant être partagé
par plusieurs utilisateurs ayant des vues différentes de ces données. Ainsi, une base de
Données est un ensemble organisé de données.
Une Base de Données est composée des composants suivants :
 Table : qui est un ensemble de données relatives à un même sujet et est structurée
sous forme detableau.
 Attribut : dit encore propriété ou champs, c’est l’information la plus élémentaire
servant à décrire lessujets.
 Enregistrement : défini par les valeurs associées à ses propriétés.
 Clé primaire : c’est une représentation conventionnelle, généralement abrégée
permettant d’identifier d’une manière unique une table (un sujet). En général, la clé
primaire d’une table est une colonne ou un groupe de colonnes de cette table.
Lorsqu’on connait la valeur de cette clé on peut connaitre sans ambigüité les valeurs
des autres attributs de cette table. C’est l’identifiant unique d’une table.
Exemple : si on connait le numéro de la carte d’identité nationale d’une personne on peut
alors connaitre toutes ses informations personnelles à savoir son nom & prénom, sa date et
lieu de naissance, son adresse, …
 Clé étrangère : c’est le lien entre deux tables.
Exemple : l’attribut "N_Clt" dans la table "Commande" est une clé étrangère car il désigne
le numéro du client qui a passé une commande.
Système de Gestion de Bases de Données SGBD : un SGBD est un ensemble coordonné de
logiciels qui permettent de décrire, manipuler et traiter l’ensemble des données formant une
Base de Données. Il agit comme interface entre l’utilisateur et la Base de Données.
Gérer une BDR en utilisant un SGBDR en mode assisté :
La réalisation d’une base de données passe impérativement par les étapes suivantes :
✓ Création du fichier Base de Données ;
✓ Création des tables de la Base ;
✓ Établir les relations entre ces tables ;

1
3ème EG – Prof. Sami MEJRI

✓ Charger (remplir) les tables : saisir les enregistrements de chaque table ;


✓ Réaliser les requêtes.

Dans la suite de ce cours on utilisera le Logiciel Microsoft Office 2007 comme SGBD et la Base
de Données "Gestion_Restaurant"

Étude de cas :
Afin de mieux gérer les différents services dans un restaurant, on se propose d'utiliser la base de
données simplifiée intitulée "Gestion_Restaurant" décrite par le schéma textuel suivant :
Table (NumTable, NbrePlaces)
Serveur (IdServeur, NomPrenom)
Plat (CodePlat, NomPlat, PrixPlat)
Commande (NumTable#, IdServeur#, CodePlat#, DateCom, HeureCom, NbrePlats)
Soit la description des colonnes des tables de cette base de données :

Nom Descriptio Type Taille Format Contrainte


n
NumTable Numéro d'une table. Numérique Entier
NbrePlaces Nombre de places d'une table. Numérique Entier Null interdit.
IdServeur Identifiant d'un serveur. Texte court 3
NomPrenom Nom et prénom d'un serveur. Texte court 50 Null interdit.
CodePlat Code d'un plat. Texte court 5
NomPlat Nom d'un plat. Texte court 50 Null interdit.
PrixPlat Prix d'un d'un plat exprimé en dinar Numérique Entier >0
tunisien.
DateCom Date d'une commande. Date/heure Date abrégée
HeureCom Heure d'une commande. Date/heure Heure abrégée
NbrePlats Nombre de plats commandés. Numérique Entier >0

Créer une BDR :

À l'aide du logiciel de gestion de base de données disponible, on vous demande de :


Créer, dans votre dossier de travail, la base de données à nommer "Gestion_Restaurant".

Pour créer le fichier d’une nouvelle base de données on procède comme suit : Lancer le logiciel
Access

Aller au chemin d’accès suivant : C:\bac2024\dossier_personnel_élève


Dans la zone "Nom de fichier", saisir le nom de la base de données à créer, dans
notre cas c’est "Gestion_Restaurant"
Valider les choix en cliquant d’abord sur "OK" puis sur "Créer".

2
3ème EG – Prof. Sami MEJRI

Manipuler la structure d’une base de données :


Créer, modifier et supprimer des tables, définir et modifier des clés primaires :

Créer les tables et les relations de cette base de données tout en respectant les types et les
propriétés citées dans la description ci-dessus.
Pour créer une table on suit les étapes suivantes :
❖ Cliquer sur la commande "Création de table" du menu "Créer" ;
❖ Dans la fenêtre qui s’affiche, saisir les noms des attributs de chaque table dans la
colonne "Nom du champ" en précisant le type de chaque attribut dans la colonne
"Type de données" et en spécifiant pour chaque attribut la taille, le format et
éventuellement les contraintes
nécessaires ;
❖ Sélectionner le ou les champs qui
représente(ent) la clé primaire et
cliquer sur le bouton "Clé
primaire" situé dans le menu
"Création de table" ;
❖ Enregistrer la table avec son nom.

3
3ème EG – Prof. Sami MEJRI

Définir, modifier et supprimer des champs (type, propriétés, …) :

Figure 2: propriétés du champ Figure 3: propriétés du champ Figure 4: propriétés du


NumTable DatCom champNbrePlats

Créer les relations (respecter les contraintes d’intégrité référentielles et de tables) :


Une fois les tables sont créées, il est temps de les relier ; pour ce faire :
✓ Il faut d'abord fermer toutes les tables ouvertes dans
l’espace de travail
✓ Choisir l'option "Relations" du menu "Outils de base
de données"
✓ Sélectionner toutes les tables de notre base de données
et les ajouter
✓ Dans l'espace de travail, cliquer sur le champ clé primaire de la table source (dite
encore table mère) de la relation, maintenir le bouton gauche de la souris enfoncé et
glisser la souris jusqu’à arriver au champ clé étrangère dans la table cible de la relation
(table fille).
✓ En relâchant le bouton gauche de la souris, la fenêtre "Modifier des relations"
apparait, il faut donc spécifier les paramètres de la relation et cliquer sur le bouton
"OK".

Figure 5: relation entre les tables "Table" et "Commande"

4
3ème EG – Prof. Sami MEJRI

On obtient ainsi la représentation graphique de la base de données comme illustré ci-


dessous !

Une fois les tables sont créées et les relations entre elles sont établies, il est temps de les
remplir par les données nécessaires. Pour remplir les tables d’une base de données on les ouvre
une par une, on saisit les enregistrements de chacune d’elles ligne par ligne et on enregistre la
saisie.
Attention, il faut toujours commencer par remplir les tables sources de la relation avant
la/les table(s) cible(s) ! Dans notre cas on doit remplir les tables "Table", "Serveur" et
"Plat" avant la table "Commande".

Manipuler les données d’une BDR :


Créer des requêtes de sélection : simples, paramétrées et de calcul :

Stocker sans cesse des informations dans une base de données et en assurer la maintenance,
n'est pas une fin en soi. Il faut pouvoir retrouver, chaque fois que cela est nécessaire, les
informations pertinentes donton a besoin. La requête de sélection a été créée dans ce but. Elle
joue, dans les bases de données, un rôle très important. La sélection représente l'outil courant
de recherche d'informations dans les bases de données.

D'une manière générale, une requête de sélection :


• s'applique soit à une seule table, soit à plusieurs tables liées par des relations
• permet de sélectionner les lignes par application d'un ou de plusieurs critères
portantsur un ou sur plusieurs champs
• permet de choisir les colonnes que l'on veut conserver (comme la sélection simple)
• peut enregistrer le résultat recherché sous forme d'une table.

5
3ème EG – Prof. Sami MEJRI

❖ Créer les requêtes suivantes :

R1 : Afficher les noms et les prix des plats


Table(s) à ouvrir : ……………

Champ :
Table :
Tri : …………………………………………..
Afficher :
Critères :
Ou :

R2 : Afficher les noms et les prix des plats triés dans l’ordre décroissant selon les prix ;
Table(s) à ouvrir : ……………

Champ :
Table :
Tri : …………………………………………..
Afficher :
Critères :
Ou :

R3 : Afficher le nom et le nombre total de chaque plat servi le 03/01/2022 pour la table N°1 ;
Table(s) à ouvrir : ……………
Champ :
Table :
Opération :
Tri :
Afficher :
Critères :
Ou :

………………………………………
R4 : Afficher le nom et le prix d'un plat donné par son code
Table(s) à ouvrir : ……………
Champ :
Table :
Tri :
Afficher :
Critères :
Ou :

……………………………………………

6
3ème EG – Prof. Sami MEJRI

R5 : Calculer et afficher le nombre de plats servis par un serveur donné par son IdServeur ;
Table(s) à ouvrir : ………………………..

Champ :
Table :
Opération :
Tri :
Afficher :
Critères :
Ou :
……………………………………..
R6 : Afficher la liste des commandes (NumTable, NomPrenom, NomPlat, PrixPlat,
NbrePlats) servis pendant l’année 2022, triée par ordre chronologique des dates de commande.
Table(s) à ouvrir : ……………………………………

Champ :
Table :
Tri :
Afficher :
Critères :

Ou :
…………………………………………….
R7 : Afficher les noms et prix des plats servis par le serveur "Salhi Jamel" ou "Selmi Kamilia".
Table(s) à ouvrir : …………………………….

Champ :
Table :
Tri :
Afficher :
Critères :
Ou :
……………………………………..
Ou bien
Table(s) à ouvrir : …………………………………
Champ :

Table :
Tri :
Afficher :
Critères :
Ou :

7
3ème EG – Prof. Sami MEJRI

R8 : Afficher les noms et prix des plats servis par le serveur "Salhi Jamel" ou dont
le prix > 18dt.
Table(s) à ouvrir : …………………………………….

Champ :
Table :
Tri :
Afficher :
Critères :
Ou :

………………………………………………

Créer des requêtes de mise à jour : simples et paramétrées :

Comme leur nom l’indique les requêtes de mise à jour sont utilisées pour apporter une mise à
jour (modification) au contenu d’une table. Par exemple, modification de l’adresse d’un client,
augmentation du salaire d’un employé, apporter une remise à un prix, etc…

R9 : Augmenter les prix des plats Couscous de 10%.


Table(s) à ouvrir : ……………..

Champ :
Table :
Mise à jour :
Critères :
Ou :

………………………………………………..
R10 : Modifier le nom du plat de code "PIZ01" par "Pizza Napolitaine".
Table(s) à ouvrir : …………………

Champ :
Table :
Mise à jour :
Critères :
Ou :

…………………………………………………

8
3ème EG – Prof. Sami MEJRI

R11 : Augmenter le nombre de places de 2 d’une table donnée par son numéro.
Table(s) à ouvrir :………………………….

Champ :
Table :
Mise à jour :
Critères :
Ou :

………………………………………………

Créer des requêtes de suppression : simples et paramétrées :


Pour supprimer un ou plusieurs enregistrements d’une table on peut utiliser une requête de
suppression, pour ce faire on procède comme suit :
Dans le menu "Créer", choisir la commande "Création de requête"
Ajouter la/les table(s) sur la/lesquelles(s) agira la requête
Modifier le type de requête en requête de "Suppression" ; Ajouter les colonnes
nécessaires
Dans la ligne critères, spécifier les critères de suppression ; Enregistrer la requête et
l’exécuter.
Remarque :
En exécutant une requête de suppression une fenêtre d’alerte s’affiche pour confirmer l’action
de suppression !

Exemple :

R12 : Supprimer le serveur dont l’identifiant est "S01"


Table(s) à ouvrir : ……………………

Champ :
Table :
Supprimer :
Critères :
Ou :

……………………………………………..

9
3ème EG – Prof. Sami MEJRI

R13 : Supprimer un serveur dont l’identifiant est donné


Table(s) à ouvrir : ……………………….

Champ :
Table :
Supprimer :
Critères :
Ou :

………………………………………………….

Créer des requêtes d’ajout :

Comme leur nom l’indique, une requête d'ajout ajoute un groupe d'enregistrements d'une ou
de plusieurs tables à la fin d'une ou de plusieurs tables...
Revenons à notre base de données "Gestion_Restaurant" et soit la table "Nouveaux Plats"
qui a le même schéma que la table "Plats" et contenant la liste des nouveaux plats que notre
chef préparera à nos clients.
Voici le contenu de la table "Nouveaux Plats" :
Nouveaux Plats
CodePlat NomPlat PrixPlat
PIZ02 Pizza 4 saisons 18
RIZ02 Paella 25
RIZ03 Riz aux fruits secs 35

On se propose d’ajouter à la table Plats tous les plats de riz qui se trouvent dans la table
"Nouveaux Plats".

Pour répondre à cette question on doit parcourir la table "Nouveaux Plats" et extraire les
enregistrements répondant à la contrainte (CodePlat = Comme "RIZ*") puis les ajouter à la
table "Plat". Pour cela, on doit suivre les étapes suivantes :

Dans le menu "Créer", choisir la commande "Création de requête"


Ajouter la table "Nouveaux Plats"
Modifier le type de requête en requête d’ "Ajout" ;

10
3ème EG – Prof. Sami MEJRI

Dans la boite de dialogue qui s’affiche, choisir la table dans laquelle on va ajouter les
enregistrements en question. Dans notre cas, choisir la table "Plat" ;

Dans la grille de création de la requête, fixer les champs à ajouter à la table "Plat"
puis spécifier la contrainte (CodePlat = Comme "RIZ*")
Enregistrer la requête sous le nom Req_ajout_plats et l’exécuter.

Table(s) à ouvrir : ………………………

Champ :
Table :
Tri :
Ajouter à :
Critères :
Ou :

…………………………………………..
On peut également créer une requête d’ajout paramétrée, par exemple ajouter les plats d’un
CodePlat donné par l’utilisateur. On procède de la même façon déjà décrite pour les requêtes
d’ajout simple sauf que le critère sera comme suit :
CodePlat=[Taper le code du plat à ajouter :]

Table(s) à ouvrir : …………………………

Champ :
Table :
Tri :
Ajouter à :
Critères :
Ou :

……………………………………………………

11
3ème EG – Prof. Sami MEJRI

En exécutant une requête d’ajout une boite de dialogue s’affiche à l’utilisateur lui
demandant de confirmer l’action d’ajout.

Si l’utilisateur est certain de vouloir ajouter les lignes sélectionnées, il doit alors cliquer sur
"Oui".

Importer/exporter des données (Table et/ou Requête) au format csv :


Importer une table :

Le traitement d’importation est souvent utilisé lorsque le contenu d’une table qu’on veut créer
dans notre base existe déjà soit dans une autre base de données soit sous un autre format (Excel,
texte, csv, …). Donc au lieu de la créer et remplir de nouveau il suffit alors de l’importer. Dans
notre cas on va voir comment importer une table à partir d’un fichier Excel ou encore csv.

❖ Dans le menu "Données externes" choisir "Importer et lier"


❖ Choisir la commande "Nouvelle source de données"
❖ Choisir l’option "À partir d’un fichier" Excel
Fichier texte
❖ Préciser les options d’importation ; Valider les choix en cliquant sur "OK".

12
3ème EG – Prof. Sami MEJRI

Figure 6 : les étapes d’importation d’une table à partir d’un fichier csv

13
3ème EG – Prof. Sami MEJRI

Exporter une table :


On peut se trouver dans certains cas dans une situation où on a besoin d’ouvrir (ou encore
sauvegarder) une table/une requête dans un autre logiciel que Access, soit Excel ou csv pour
réaliser des traitements d’analyse de données, pour ce faire il faut :
❖ Sélectionner l’objet à exporter et cliquer avec le bouton droit de la souris
❖ Choisir la commande Exporter du menu qui s’affiche ;
❖ Choisir le type du fichier cible (les fichiers de type ".xlsx" ou ".xls" et
les fichiers ".csv" ou encore ".txt")
❖ Dans la fenêtre qui s’affiche préciser l’emplacement où on veut exporter le
fichier résultat
❖ Valider les choix en cliquant sur "OK".

Pour les fichiers de type ".csv" ou ".txt", l’opération d’export ne s’arrête pas à ce
niveau, il faut encore spécifier quelques paramètres comme le délimiteur qui séparera
les champs ( ; ), Inclure les noms des champs sur la première ligne,

14
3ème EG – Prof. Sami MEJRI

Figure 7: les étapes d'exportation d'une table au


format csv

15
3ème EG – Prof. Sami MEJRI

Requête
C’est un moyen pour interroger la base de données d’une ou de
plusieurs tables,

Le résultat d’une requête est sous forme d’une feuille de données.

Création d’une requête

 Activer l’onglet « créer »/choisir la commande « création de requête »


 La boite de dialogue affiche la liste des tables et requêtes de la BD, marquer la (les)
table(s) ou la(les) requêtes dont dépend la requête, puis cliquer sur ˝ajouter˝
 Cliquer enfin sur fermer après avoir transférée les tables nécessaires pour la requête

Les types de requêtes

Requête de Requête de
sélection mise à jour

Requête de Requête
suppression d’ajout

16
3ème EG – Prof. Sami MEJRI

Système de Gestion de Base de Données(SGBD)

C’est un outil qui permet de de gérer des nouvelles bases de données, c'est-à-dire :

• Permettre l’accès aux données de façon simple.


1

• Autoriser un accès aux informations à plusieurs utilisateurs,


2

• Manipuler les données présentes dans la base de données (insertion,


3 suppression, modification).

• Assurer la sécurité des données


4

SGBD relationnel (SGBDR)


Le SGBD qui gère une BDD relationnelle est appelé "SGBD relationnel", ce qui est
souvent abrégé en SGBDR.

Objectifs du modèle relationnel

• Indépendance entre les applications et la représentation interne


des données.
1

• Etablir une base de données solide pour traiter les problèmes de


cohérence et de redondance des données.
2

Dans le modèle relationnel, les données sont organisées sous forme de


tableaux de valeurs appelés tables.

17
3ème EG – Prof. Sami MEJRI

Requête d’ajout

Elle permet d’ajouter un groupe d’enregistrements d’une ou de


plusieurs tables à la fin d’une ou de plusieurs tables.

L'ajout des enregistrements se fait par défaut à la fin de la table.

Si la table contient des contraintes d'ordre, l'ajout se fait dans la


bonne position.

18
3ème EG – Prof. Sami MEJRI

Requête de mise à jour

C'est une requête qui apporte des


changements globaux à des enregistrements
dans une ou plusieurs tables.

La nouvelle valeur ne dépend pas La nouvelle valeur dépend de


de l’ancienne valeur l’ancienne valeur

Ecrire directement la nouvelle Ecrire le nom du champ entre

valeur dans l’emplacement crochets [ ] et l’utiliser dans une

adéquat. expression répondant à vos besoins

19
3ème EG – Prof. Sami MEJRI

Requête de suppression

Les requêtes Suppression permettent de supprimer rapidement


les enregistrements qui répondent aux critères posés.

Créez tout d’abord une requête Sélection


permettant de sélectionner les
1 enregistrements concernés : seuls les champs
sur lesquels portent les critères doivent être
insérés.

2 Cliquez sur le bouton Exécuter pour vérifier la


liste des enregistrements.

3 Cliquez sur le bouton Suppression

Important :
1. Utiliser des critères pour renvoyer uniquement les

enregistrements que vous souhaitez supprimer.

Sinon, la requête Suppression supprime tous les

enregistrements de la table.

2. Si les enregistrements résident du côté « un » et du coté

« plusieurs » d’une relation un-à-plusieurs,

vous devrez peut-être modifier la relation avant

d’exécuter la requête Suppression.

20
3ème EG – Prof. Sami MEJRI

Requête de sélection

Requête de sélection simple Requête paramétrée Requête de calcul

Utiliser les opérateurs Permet de créer à chaque fois Pour pouvoir calculer la
relationnels et/ou les une table résultat suivant un somme, la moyenne, l’effectif,
autres opérateurs déjà critère donnée dans l’exécution la valeur maximale/
cités (comme, entre,…) (paramètre), donc la requête est minimale,… on ajoute la ligne
écrite une seule fois mais le Opération à la grille de la
critère change pour chaque requête par un simple clic sur
exécution, donc le résultat diffère la commande et
d’une exécution à une autre. choisir parmi la liste, l’option
qui vous convient.

Dans la grille de création de la


requête, le paramètre doit être
représenté par un message écrit
entre crochets ([Saisir …...])

21
3ème EG – Prof. Sami MEJRI

Opérateurs

Opérateurs relationnels Autres opérateurs

* = Egal * <> Différent * Entre * pas

* < Inférieur * > Supérieur * Dans


* <= Inférieur ou égal * Est
* >= Supérieur ou égal * comme

Entre Dans Comme Est


Sélectionne les Sélectionne les  Sélectionne les Sélectionne les
enregistrements pour enregistrements enregistrements enregistrements
lesquels la valeur d'un pour lesquels la valeur d'un  contenant une Pour lesquels un
champ est comprise champ est comprise dans donnée champ est vide ou
dans un intervalle de une liste. Dans  approximative. non
valeurs. ("kairouan";"tunis") Comme "rue*" Est NULL
  N’Est pas NULL

Exemple : Caractères
utilisés : Pas
Entre "A" et "C"
* : Remplace de 0 à  Sélectionne les enregistrements ne
Entre 10 et 2
n caractères  correspondant pas au critère
Entre #01/01/24# et
? : Remplace 1 seul  Pas Entre "A" et "C"
#31/12/24#
caractères 

Exemple : 2ème
lettre B et se
termine par e

comme "?B*e" 22
3ème EG – Prof. Sami MEJRI

TP1 – Gestion de données


Afin de gérer le stockage des céréales collectées dans des silos, on se propose d’utiliser la base
de données intitulée "Gestion_Cereale" décrite par le schéma textuel simplifié suivant :
Cereale (CodeC, NomC, Prix)
Silo (CodeS, Nom, Adresse, Capacite)
Collecte (CodeC, CodeS, DateC, Quantite )
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_Cereale".
2) Créer les tables et les relations de cette base de données.
3) Remplir les tables par les données suivantes :

4) Créer les requêtes suivantes :


R1 : Afficher les noms et les quantités des céréales collectées le 30/06/2018.
R2 : Afficher la liste des silos (Nom, Adresse, Capacite) qui ont stocké une céréale de code
donné.
R3 : Afficher la somme des quantités collectées dans le silo de code "S01".
R4 : Afficher la liste des céréales collectées (CodeC, Prix, CodeS, Nom, Quantite, DateC).
5) Exporter, dans votre dossier de travail et sous le nom "collecte.csv", le résultat de la
requête "R4" au format csv (Point-virgule en séparateur de champs, point en séparateur
décimal, page de codes : Unicode (UTF-8) et inclure les noms des champs sur la première ligne).

23
3ème EG – Prof. Sami MEJRI

TP2 – Gestion de données


Afin de suivre les attaques des ordinateurs d’une société par les virus informatique, le
responsable de la direction maintenance exploite la base de données intitulée
"Gestion_Securite " décrite par le schéma textuel simplifié suivant :
Poste (CodeP, Service, Systeme)
Virus (CodeV, NomV, TypeV)
Infection (CodeP, CodeV, DateInf, HeureInf, Durée)
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_Securite ".
1) Créer les tables et les relations de cette base de données.
2) Remplir les tables par les données suivantes :

3) Créer les requêtes suivantes :


R1 : Afficher la liste des infections (CodeP, Service, Systeme, CodeV, DateInf, Duree).
R2 : Afficher la liste des virus (CodeV, NomV, TypeV) détectés le "12/01/2019".
R3 : Afficher la liste des postes (CodeP, Systeme, DateInf, HeureInf, Duree) du service
"Comptabilité", infectés par un virus de code donné.
R4 : Afficher le nombre de postes infectés entre les deux dates 08/01/2019 et 12/01/2019
d’un service donné.
4) Exporter, dans votre dossier de travail et sous le nom "infection.xlsx", le résultat de la
table "Infection" au format excel.

24
3ème EG – Prof. Sami MEJRI

TP3 – Gestion de données


Afin de gérer les hospitalisations des patients dans les différentes services d’un hôpital, on se
propose de créer la base de données intitulée "Gestion_Hospitalisation" définie par le schéma
relationnel simplifié suivant :
Service (NumServ, LibServ)
Patient (CodePat, Nom, Prenom, DateNaiss, Mutuelle)
Hospitalisation (NumServ, CodePat, DateEntree, DateSortie, Frais)
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_ Hospitalisation".
2) Créer les tables et les relations de cette base de données.
3) Remplir les tables par les données représentées dans les tableaux suivants :
Service Hospitalisation
NumServ LibServ NumServ CodePat DateEntree DateSortie Frais
10 Cardiologie 30 P42 10/12/16 14/12/16 260,000
20 Chirurgie 10 P51 08/09/16 09/09/16 500,000
30 Urgences 30 P54 02/01/16 10/01/16 1200,000
20 P42 03/03/16 12/03/16 720,000
10 P40 06/10/16 06/10/16 350,000
Patient
CodePat Nom Prenom DateNaiss Mutuelle
P40 Dhieb Hamed 02/05/54 Non
P42 Feki Hichem 12/12/98 Oui
P51 Mokni Lotfi 15/05/88 Non
P54 Ketari Nabil 03/08/51 Oui

4) Créer les requêtes suivantes :


R1 : Afficher la liste des patients (Code, Nom et Prénom) n’ayant pas de mutuelle, trié
par ordre alphabétique.
R2 : Afficher la liste des patients (Code, Nom et Prénom) hospitalisés dans le service
ayant comme libellé "Cardiologie".
R3 : Afficher le nombre de patients hospitalisés dans le service numéro 10.
5) Exporter, dans votre dossier de travail et sous le nom "patient.csv", le résultat de la
requête "R2" au format csv (Point-virgule en séparateur de champs, point en séparateur
décimal, page de codes : Unicode (UTF-8) et inclure les noms des champs sur la première
ligne).

25
3ème EG – Prof. Sami MEJRI

TP4 – Gestion de données


Afin de gérer les collections de pierres précieuses de quelques collectionneurs, on se propose
de créer la base de données intitulée "Gestion_Collections" décrite par le schéma relationnel
simplifié suivant :
Collectionneur (CodeC, Nom, Prenom, Adresse)
Collection (NumC, DateCrea, Designation, CodeC)
Pierre (CodeP, Type, Poids, Qualité, Forme, Couleur, NumC)
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_ Collections".
2) Créer les tables et les relations de cette base de données.
3) Remplir les tables par les données représentées dans les tableaux suivants :
Collectionneur Collection
CodeC Nom Prenom Adresse NumC DateCrea Designation CodeC
C24 Beji Ali Béja 1 10/07/10 Saph2010 C24
C40 Abdi Fedi Bardo 2 13/08/13 Rub2013 C40
C50 Tounsi Aya Tunis 3 24/10/15 Diam2015 C60
C60 Hajji Sofien Bizerte 4 20/12/13 Em2013 C24

Pierre
CodeP Type Poids Qualité Forme Couleur NumC
P1 Rubis 0,40 AAAA Ovale Rouge 2
P16 Emeraude 1,48 AAAA+ Emeraude Vert Foncé 4
P23 Diamant 0,35 SI1 Princesse Rose 3
P33 Diamant 0,25 SI2 Ovale Noir 3
P52 Saphir 2,50 AAAA+ Ovale Rose 1
4) Créer les requêtes suivantes :
R1 : Afficher la liste des collectionneurs (Nom, Prénom et Adresse) qui habitent dans une
ville commençant par la lettre B.
R2 : Afficher la liste des pierres (Type, Poids, Forme, Qualité et Couleur) appartenant à
une collection de numéro donné.
R3 : Afficher le nombre de pierres de type "Diamant" en utilisant la commande
"Totaux".
5) Exporter, dans votre dossier de travail et sous le nom "pierre.csv", le résultat de la table
"Pierre" au format csv (Point-virgule en séparateur de champs, point en séparateur décimal,
page de codes : Unicode (UTF-8) et inclure les noms des champs sur la première ligne).

26
3ème EG – Prof. Sami MEJRI

TP5 – Gestion de données


Afin de gérer les ventes de ses appareils mobiles, une société exploite la base de données
"Gestion_Ventes" décrite par le schéma simplifié suivant :

Appareil ( Code, Désignation, Type, PrixUnit, QtéVendue, DateSortie, IdOS, IdFab)


Système (IdOS, Famille, Editeur)
Fabricant (IdFab, Nom, PaysOrigine)
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_ Ventes".
2) Créer les tables et les relations de cette base de données.
3) Remplir les tables par les données représentées dans les tableaux suivants :

Appareil
Code Désignation Type PrixUnit QteVendue DateSortie IdOS IdFab
C001 Sony Xperia Smartphone 1500 5500 20/10/2015 S002 F001
Z5
C002 iPhone 6s iPhone 2200 3000 20/09/2015 S003 F003
Plus
C003 Nokia Lumia Smartphone 300 18600 10/06/2014 S001 F002
635

Système Fabricant
IdOS Famille Editeur IdFab Nom PaysOrigine
S001 Windows Microsoft F001 Sony Japon
S002 Android Google F002 Nokia Finlande
S003 iOS Apple F003 Apple USA

4) Créer les requêtes suivantes :


R1 : Afficher la liste des appareils (Désignation, Type, PrixUnit) qui fonctionnent avec
un système de la famille "iOS"
R2 : Afficher le fabricant (Nom, PaysOrigine) pour un type d’appareil donné.
R3 : Diminuer de 7% les prix des appareils.
5) Exporter, dans votre dossier de travail et sous le nom "appareil.csv", le résultat de la table
"Appareil" au format csv (Point-virgule en séparateur de champs, point en séparateur
décimal, page de codes : Unicode (UTF-8) et inclure les noms des champs sur la première
ligne).

27
3ème EG – Prof. Sami MEJRI

TP6 – Gestion de données


Afin de bien gérer les émissions présentées dans les différentes chaînes de télévision, on
exploite la base de données "Gestion_Emission" décrite par le schéma simplifié ci-dessous.
Chaine (CodeCh, NomCh, DateLancement, Fréquence)
Satellite (CodeSat, NomSat, Position)
Emission (CodeCh, CodeSat, TitreEmission, Catégorie, Durée)
À l’aide du logiciel de gestion de base de données disponible :
1) Créer, dans votre dossier de travail, la base de données "Gestion_ Emission".
2) Créer les tables et les relations de cette base de données.
3) Remplir les tables par les données représentées dans les tableaux suivants :

Chaine Satellite
CodeCh NomCh DateLancement Fréquence CodeSat NomSat Position
CH01 C1 01/01/2001 11023 S01 Sat1 7.0W
CH02 C2 05/12/2001 10087 S02 Sat3 21.5W
CH03 C3 27/03/2005 10776

Emission
CodeCh CodeSat TitreEmission Catégorie Durée
CH01 S02 LeRally Sport 25
CH03 S01 BdJunior Enfant 20
CH02 S01 TNews Information 35
CH02 S02 LeMatch Sport 90
CH01 S02 KindKids Enfant 100

4) Créer les requêtes suivantes :


R1 : Afficher les noms et les dates de lancement des chaînes émises par le satellite "S02"
R2 : Afficher les titres et les catégories des émissions diffusées sur une chaîne donnée.
R3 : Supprimer le satellite "S01"

5) Exporter, dans votre dossier de travail et sous le nom "emission.xlsx", le résultat de la


table "Emission" au format excel

28
3ème EG – Prof. Sami MEJRI

Sujet 1 - Théorique – Gestion de données


Soit la représentation textuelle de la base de données "Gestion_magasin" suivante :
ARTICLE (NumArticle, Libelle, Prix, Etagere)
FOURNISSEUR (NumF, Nom, Tel)
REMISE (NumArticle, NumF, TauxRemise)
En se basant sur la représentation textuelle de la base de données "Gestion_magasin" :
1. Compléter la représentation graphique de cette base par les noms des tables, les champs de
chaque table et les relations entre ces tables.

2. Remplir le tableau suivant :

Table Clé primaire Table en Type de relation Clé étrangère


relation
ARTICLE

FOURNISSEUR

REMISE

3. Compléter les tableaux ci-dessous pour répondre aux requêtes suivantes :


a. Afficher la liste des articles (NumArticle, Libelle et Prix) dont le prix est supérieur à 10 et
l’Étagère commence par la lettre "A".

29
3ème EG – Prof. Sami MEJRI

b. Afficher les noms des fournisseurs et les taux de remise accordés à un article donné.

c. Augmenter les taux de remise de 5% pour tous les produits fournis par le fournisseur numéro
13

30
3ème EG – Prof. Sami MEJRI

Sujet 2 - Théorique – Gestion de données

Afin de gérer les courses hippiques planifiées, le comité d’organisation exploite la base de
données simplifiée "Gestion_course" décrite par le schéma suivant :
Cheval (NumCh, NomCh, SexeCh, PoidsCh, DateNaissCh)
Jockeys ( CodeJ, NomJ, PrénomJ, PoidsJ)
Parcours (CodeParc, Ville, Distance)
Course (NumCh, CodeJ, CodeParc, DateCourse, Durée)
1) Pour chacune des phrases suivantes, encercler la réponse correcte par les listes des
alternatives proposées entre parenthèses.
• "DateNaissCh" est (un attribut / une clé primaire / une clé étrangère )
• "Parcours" est (un enregistrement / une clé étrangère / une table )
• "CodeJ" est (une table / une clé primaire / un enregistrement ) de la table (Jockeys / Course)

2) Pour chacune des requêtes ci-dessous remplir la grille correspondante :


➢ Requête 1 : Afficher les noms et les prénoms des Jockeys qui ont participé au
parcours de la ville "Ksar Said" le "15/07/2015"

➢ Requête 2 : Augmenter le poids du cheval "Wahdoo" de 5 kg

31
3ème EG – Prof. Sami MEJRI

3) Soit la grille de création d’une requête présentée comme suit

Champs : DateCourse Durée NomCh NomJ CodeParc


Table : Course Course Cheval Jockeys Course
Tri :
Afficher :
Critère : [saisir le code :]
Ou :

a- Donner le type de cette requête

………………………………………………………………………………..

b- Donner le rôle de cette requête

………………………………………………………………………………..
………………………………………………………………………………..
………………………………………………………………………………..
………………………………………………………………………………..

32
3ème EG – Prof. Sami MEJRI

Sujet 3 - Théorique – Gestion de données

Une grande surface veut gérer la distribution des magazines par les différents coursiers. Pour
cela, on se propose d’exploiter la base de données simplifiée intitulée "Gestion_Coursier"
décrite par le schéma textuel suivant :

Coursier (Matricule, NomPrenom, Adresse, Tel )


ModeTransport (CodeTrans, ModeTrans, CoutDistMag)
Distribution (Matricule, Date, VoieDesservie, CodeTrans, NbMagDistribues)

1- Compléter les propriétés "Valide si" et "Null interdit " du champ "NbMagDistribus"
de la table "Distribution", sachant que ce champ ne doit pas etre vide et le nombre de
magazines distribués doit être supérieur ou égal à 500

2- Pour chacune des requêtes ci-dessous, compléter la grille correspondante

▪ R1 : Afficher la liste des coursiers (Matricule et NomPrenom ) qui ont distribué


des magazines en utilisant le mode de transport "Vélo"

33
3ème EG – Prof. Sami MEJRI

▪ R2 : Afficher le nombre total de magazines distribués par le coursier "Ali Dridi"

Champs :
Table :
Opération :
Tri :
Afficher :
Critère :
Ou :

3- Après exécution de la requête R3, on obtient le résultat suivant

NomPrenom ModeTrans VoieDesservie


Ali Dridi Vélo Ariana centre
Ali Dridi Vélo Cité Ghazella
Imen Chakroun Vélo Centre ville
Imen Chakroun Vélo Ariana centre

En utilisant un critère sur le champ "Date" compléter la grille de création ci-dessous


correspondant à R3

4- Soit la grille de création de la requête R4 suivant :


Champs : CoutDisMag CodeTrans
Table : ModeTransport ModeTransport
Mise à jour : [CoutDisMag]*1.1
Critère : "T1"
Ou :

a- Quel est le type de cette requête ? ……………………………….


b- Donner le rôle de cette requête
………………………………………………………………………..
……………………………………………………………………….
……………………………………………………………………….

34

Vous aimerez peut-être aussi