Nothing Special   »   [go: up one dir, main page]

Orrigé Evoir: Exercice 1: Analyse D'Un MCD (8 Points)

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

UE 

118 Corrigé
Devoir 1
Systèmes d’information de gestion
Année 2018-2019

Auteur : Jean-Ludovic Dietz

EXERCICE 1 : ANALYSE D’UN MCD (8 POINTS)

1. Proposez une analyse des cardinalités de l’association FOURNIR, CONTENIR. (1 point)


Un PRODUIT est fourni par un ou plusieurs FOURNISSEURS. Tout FOURNISSEUR peut fournir au moins
un produit.
Une COMMANDE peut contenir différents PRODUITS en une certaine quantité et pour un prix spécifique.
Un PRODUIT peut faire l’objet d’une ou de plusieurs COMMANDES.

2. Commentez l’entité COMMANDE. (1 point)


L’entité COMMANDE est scindée en deux catégories : les commandes livrées par la poste et les com-
mandes livrées par un transporteur. Il faut obligatoirement choisir l’une de ces deux catégories, pas les
deux à la fois et pas autre chose.

3. Ajoutez les cardinalités manquantes en justifiant vos choix. (1 point ; – 0,25 point par
erreur)

CLIENT
Code client TYPE CLIENT
1,1 0,N
Document de travail réservé aux élèves de l’Intec – Toute reproduction sans autorisation est interdite

Nom client Appartenir N° type


Prénom client Libellé type
Rue client
Ville client
CP client
1,1

Appartenir 0,N
ZONE
N° zone
Couvrir 0,N Nom zone

1,1

COMMERCIAL
Nom commercial
Prénom commercial
Rue commercial
Ville commerciale
CP commercial
Fixe

Il s’agit de trois structures père-fils.


On acceptera 1,n comme cardinalité.

201181CTPA0118 1
Systèmes d’information de gestion • Corrigé devoir 1

4. Peut-on trouver, pour les commandes non livrées au moment prévu (jour et heure), le
numéro de commande et le nom du transporteur ? (1 point)
Il suffit de retenir les commandes dont l’état est « En cours » et d’identifier les commandes dont la date
de livraison prévue est postérieure à la date du jour. À partir de la commande, on peut alors identifier le
transporteur

5. Peut-on connaître le mode de livraison utilisé pour la commande n° 486 relative au client
Cabinet médical Adalbert ? Justifiez votre réponse. (1 point)
Oui, car une commande est livrée soit par la poste, soit par le biais d’un transporteur. La contrainte XT
est une contrainte de partition qui permet d’affirmer que la livraison est effectuée soit par la poste soit
par un transporteur mais pas par les deux et pas par un autre moyen.

6. Le responsable a remarqué qu’il est parfois impossible de retrouver le fournisseur d’un
produit lors d’une réclamation d’un client. Comment remédier à ce problème ? (1 point)
L’association entre PRODUIT et FOURNISSEUR est de type plusieurs à plusieurs. Il n’est donc pas pos-
sible de retrouver le nom du FOURNISSEUR pour un PRODUIT donné.
Avec une identification relative, il serait possible de retrouver à tout moment le nom du FOURNISSEUR
pour un PRODUIT quelconque puisque l’identifiant produit comprendrait également l’identifiant fournis-
seur.

7. Peut-on retrouver les clients concernés par le COMMERCIAL Garnier ? (1 point)


Toute COMMANDE est associée à un COMMERCIAL. Par ailleurs, toute COMMANDE est passée par un
CLIENT. Par transitivité, on peut donc retrouver les CLIENTS concernés par le COMMERCIAL Garnier.

8. Quel reproche peut-on faire à la modélisation de l’entité COMMERCIAL ? (1 point)


L’identifiant est le nom du commercial. On court un risque de doublon. Pour éviter ce risque le recours à
un code serait préférable.

Document de travail réservé aux élèves de l’Intec – Toute reproduction sans autorisation est interdite

2
Document de travail réservé aux élèves de l’Intec – Toute reproduction sans autorisation est interdite

201181CTPA0118
TYPE RESIDENCE CALENDRIER MATERIEL LAVAGE
Code Date CodeMat Volume
Libelle Libelle XT
Prixconseille CoutAcquisition SECHAGE
TauxCom 0,n DureeAmort
0,n 1,n DateMaintenance

SE TROUVER FACTURER CONTENIR


Nombre Quantite

0,1 0,n 1,n

GERANT LAVERIE REPARATION TECHNICIEN


EXERCICE 2 : ÉLABORATION D’UN MCD (16 POINTS)

Matricule 0,n GERER 1,1 NumLav 0,n ENTRAINER 1,1 Numero 1,1 FAIRE 0,n NumTech
Nom Surface Libelle Nom
Prenom Ville CoutPiece Prenom
Rue Fini(OUINON)
Ville
CodePostal
Mail

3
UE 118 • Systèmes d’information de gestion
Systèmes d’information de gestion • Corrigé devoir 1

BARÈME
• Entités GERANT, LAVERIE, REPARATION, TECHNICIEN, TYPERESIDENCE, CALENDRIER  :
6 × 1 point
• Entité MATERIEL : 3 points (1 point pour l’entité, 1 point pour l’héritage, 1 point pour la contrainte)
• Associations GERER, ENTRAINER, FAIRE, SETROUVER : 4 × 1 point
• Associations FACTURER, CONTENIR : 2 × 1,5 point

EXERCICE 3 : MRD/SQL (16 POINTS)

1. Établissez le MRD correspondant au MCD. (4 points)


(– 1 point par erreur)
CLIENT(CodeCLi, Nom, Prenom, Rue, Ville, CodePostal, Telephone, Mail, #CodeStatut)
STATUT(CodeStatut, Libelle)
ECHANTILLON(CodeEch, DateArrivee, #CodeCli)
TYPEANALYSE(Num, Designation, Prix)
ANALYSER(#CodeEch, #Num, Date)

2. Rédigez en langage SQL les requêtes suivantes : (12 points)


R1) Quels sont les clients qui ont amené des échantillons durant le mois de mars 2018 ? (2 points)
SELECT CodeCli, Nom, Prenom,
FROM CLIENT, ECHANTILLON
WHERE CLIENT.codeCli=ECHANTILLON.codeCli
AND dateArrivee BETWEEN '01/03/2018' AND '31/03/2018'

R2) Quels sont les échantillons pour lesquels aucune analyse n’a été réalisée ? (2 points)
SELECT codeEch, dateArrivee
FROM ECHANTILLON
WHERE codeEch NOT IN (SELECT codeEch

Document de travail réservé aux élèves de l’Intec – Toute reproduction sans autorisation est interdite
FROM ANALYSER)

R3) Quel est le nombre d’échantillon pour chaque catégorie de client ? (2 points)


SELECT Libelle, COUNT(*) as nombre
FROM ANALYSER, CLIENT, STATUT
WHERE ANALYSER.CodeCli=CLIENT.CodeCli
AND CLIENT.CodeStatut=STATUT.CodeStatut
GROUP BY Libelle

R4) Donnez les codes et les dates d’entrée des échantillons pour lesquels plus de trois analyses
ont été réalisées. (2 points)
SELECT codeEcha, dateArrivee
FROM ECHANTILLON
WHERE codeEch IN (SELECT codeEch,
FROM ANALYSER
WHERE dateRealisation IS NOT NULL
GROUP BY codeEch
HAVING count(*) >3)

R5) Ajoutez une nouvelle catégorie : CAT5, Client de passage (2 points)


INSERT INTO STATUT (CodeCAT, libelle) VALUES (« CAT5 » ; « Client de passage »)

4
UE 118 • Systèmes d’information de gestion

R6) Supprimez le client CLI122. Quelles précautions faut-il prendre ? (2 points)


DELETE FROM CLIENT
WHERE CodeCli = « CLI122 »
Il faut impérativement supprimer toute référence à ce client dans le reste de la base ; par exemple, des
échantillons qui feraient apparaître sa clé étrangère.
Document de travail réservé aux élèves de l’Intec – Toute reproduction sans autorisation est interdite

201181CTPA0118 5

Vous aimerez peut-être aussi