TP1 Conception de base de données

Transcription

TP1 Conception de base de données
Licence S5 Info- Conception de Base de Données
2016-2017
TP 1 : Conception de BD
Conception de BD avec JMerise
I.
1. Présentation et installation de JMerise
Il existe plusieurs outils de modélisation de base de données tels que MysqlWorkbench1,
PowerAMC, WinDesign2, AnalyseSI, DBMain3, etc . Dans le cadre des TP de conception de
base de données, vous utiliserez l’outil JMerise qui est un logiciel gratuit pour la
modélisation des modèles conceptuels des données.
Pour installer JMerise, vous allez vous rendre à l’adresse suivante
http://www.jfreesoft.com/JMerise/ et télécharger JMerise.zip. N’oubliez pas de suivre
les consignes d’installation décrites sur le site.
2. Création de diagrammes


Lancer l’outil JMerise
On vous donne un schéma E/A représentant des visites dans un centre médical. Vous
allez saisir le dictionnaire des données et ce diagramme sous JMerise (Cliquer un
nouveau diagramme MCD que vous nommerez EX1.mcd.).

Vérifier votre MCD en cliquant sur
3. Interprétation des schémas Entité Association
A présent, vous allez répondre aux questions suivantes et justifier vos réponses :
a) Un médecin peut-il effectuer plusieurs visites ?
1
http://www.mysql.fr/products/workbench/
http://www.win-design.com/fr/
3
http://www.db-main.be/
2
1
Licence S5 Info- Conception de Base de Données
2016-2017
b) Un médecin peut-il recevoir plusieurs patients dans la même consultation ?
c) Peut-on prescrire plusieurs médicaments dans une même consultation ?
d) Deux médecins différents peuvent-ils prescrire le même médicament ?
4. Modification du Modèle
a) Proposez une modification du schéma précédent en prenant en considération les
besoins suivants :
Les patients de l’hôpital sont répartis dans des services (caractérisés chacun par un
nom identifiant, sa localisation, sa spécialisation). Chaque médecin appartient à un
service. Il est identifié par son nom, prénom. Lors d’une consultation, une ou
plusieurs prescriptions peut être rédigée. Chaque prescription mentionne le nom du
médicament et la posologie à respecter par le patient (posologie= simple ligne de
texte). Il est évident que le médecin ne prescrit pas deux fois le même médicament
lors d’une même consultation.
b) Vous allez répondre aux questions suivantes





II.
Peut-on connaître la liste des médicaments prescrits par un médecin ?
Peut-on connaître la liste des médicaments qui ont été prescrits pour un patient ?
Un patient peut-il avoir des consultations de médecins différents ?
Peut-on prescrire un même médicament lors d’une consultation ?
Peut-on connaître dans quel(s) service(s) un patient a-t-il été consulté ?
Génération de Script SQL
L’objectif de cet exercice est de générer un script SQL à partir d’un modèle conceptuel des
données et d’interroger la base de données que vous aurez créée.
Dictionnaire de données:
Pendant la phase de conception, les données recueillies et spécifiées sont inscrites dans un
dictionnaire. Ce dictionnaire est un outil important car il constitue la référence de toutes les
études effectuées ensuite. On dispose du dictionnaire des données suivant :
Code de la donnée
num_Vendeur
nom_Vendeur
ville_Vendeur
num_Client
nom_Client
rue_Client
codePClient
ville_Client
dateNClient
email
num_Facture
date_Facture
num_Produit
libProduit
prix_Produit
quantite
Désignation
Type
Taille
Numéro du vendeur
Nom du vendeur
Ville où travaille le vendeur
Numéro du client
Nom du client
Rue où habite un client
Code postal du client
Ville où habite client
Date de naissance du client
Adresse e-mail du client
Numéro de facture
Date de création de la facture
Identifiant du produit
Libellé du produit
Prix du produit
Quantité commandée
N
A
A
N
A
AN
N
A
Date
AN
N
Date
N
AN
N
N
20
15
20
20
15
320
30
-
2
Licence S5 Info- Conception de Base de Données
2016-2017
Le dictionnaire des données est un document qui regroupe toutes les données que vous aurez à
conserver dans votre base. Pour chaque donnée, il indique :
 Le code de la donnée : il s'agit d'un libellé désignant une donnée
 La désignation : il s'agit d'une mention décrivant ce à quoi la donnée correspond
o Le type de donnée : A ou Alphabétique, N ou Numérique, AN ou
Alphanumérique, Date et Booléen.
 La taille : qui s'exprime en nombre de caractères ou de chiffres.
 Et parfois des remarques ou observations complémentaires (par exemple si une donnée
est strictement supérieure à 0, etc).
1) Corriger/Compléter les données manquantes au modèle conceptuel de la figure suivante
2) Générer le modèle relationnel. Le script SQL pour MySQL sera généré automatiquement.
Le système de gestion de base de données par défaut est MySQL.
3) Enregistrer le script généré sous le nom de «MySQLScript.sql ». Consultez le script
généré.
4) Changer de système cible en générant différents scripts pour SQLite, Postgre SQL et
Oracle. Comparer les scripts générés avec celui de MySQL. Que remarquez-vous ?
5) Vous allez vous connecter à une base de données. La base de données sera implantée sur
un serveur MySQL. Pour cela :
a. Vous allez utiliser Uwamp4 qui est un package de type WAMP regroupant
Apache, PHP, MySQL, SQLite et phpMyAdmin.
b. Vous démarrez l'interface de contrôle de UwAmp et vérifiez que les modules
Apache et MySql sont bien démarrés.
c. Vous allez créer votre base de données qui se nommera « Vente ». Pour cela, vous
allez sur PHPMyadmin, saisir les identifiants de connexion qui sont par défaut :
i. Utilisateur : root
ii. Mot de passe :root
4
http://www.uwamp.com/fr/
3
Licence S5 Info- Conception de Base de Données
2016-2017
d. JMerise permet d'établir une connexion JDBC avec une base de données. Avant
d'essayer de vous connecter, assurez-vous que le pilote JDBC soit correctement
installé en allant sous dans le sous-répertoire: / lib de votre dossier JMerise.
e. Vous allez vous connecter à la base de données « Vente » à partir de JMerise en
allant sous l’onglet: Base de donnéesConnexion à la base de données et saisir
les identifiants de connexion ainsi que le nom de la base de données.
f. Vous allez exécuter le script SQL : Base de donnéesExécuter le script SQL
g. Vérifier que les tables ont bien été créées en allant soit sous phpMyAdmin soit
sous l’onglet Rétro-ConceptionImporter les tables.
6) Après la création de vos tables, vous aurez besoin de les remplir. Rédigez le script SQL
d’insertion d’un jeu d’essai. Vous pouvez générer un script d’insertion en vous rendant
sur le site generatedata : http://www.generatedata.com/?lang=fr. Exécuter le script
d’insertion.
7) A l’aide du langage SQL, interroger la base de données Vente pour extraire :
a) Nom des vendeurs
b) Liste des vendeurs triés par ville
c) Contenu intégral de la table VENDEUR
d) Liste des clients de la ville de Marseille
e) Liste des clients qui ont acheté au moins un produit
4