Vous êtes sur la page 1sur 13

TP n5 : AUTORISATION SUR UNE BDD MySQL

Travail en mode Client / Serveur


Contexte : Un magasin dans une chane de distribution de fleurs.
Le magasin propose aux clients des compositions florales partir de diffrentes fleurs.
Une composition florale est prpare pour un client dont on ne conserve que le nom pour
la livraison. Dans chaque boutique travaillent deux personnes, le fleuriste et la personne
responsable des rceptions de bouquets.
Le fleuriste a en charge la composition des bouquets, la rception livre la composition et
encaisse le rglement.
Objectif : Mettre disposition une base de donnes MAGASIN sur un serveur
MySQL et dfinir des autorisations propres aux deux utilisateurs du magasin de fleurs. La
base de donnes doit tre accessible partir dun client ACCESS.
Le fleuriste
La rception
Outils :
Db-main, AGL pour la conception de la base de donnes
Mysql, SGBDR pour la gestion de la base de donnes
ACCESS, pour dfinir lapplication des utilisateurs
Deux connexions de type ODBC pour lien entre ACCESS et Mysql
Dmarche :

ETAPE 1 : Crer la BDD du cas JARDIN selon le MCD de lANNEXE 1 sous MySQL

ETAPE 2 : Distribuer des autorisations aux diffrents utilisateurs de la BDD


MAGASIN selon les vues de lANNEXE 2
ETAPE 3 : Tester les autorisations laide dun client riche ACCESS

Dans ce travail, vous serez dans un premier temps, ladministrateur de la base de


donnes MAGASIN pour crer la BDD, puis un utilisateur dans le rle du fleuriste
puis du rception pour tester les autorisations.
ANNEXE 1 : Le magasin de fleurs utilise une base de donnes MAGASIN dont le
schma est le suivant :

Vue du MCD sous DB-MAIN


CONTRAINTES :
Les identifiants des entits sont des compteurs.
Table Fleurs :
Le champ Dispo (O N) a une valeur par dfaut : 1
Le champ Categorie peut prendre les valeurs sches ou coupes
Le champ Quantite_en_stock doit tre positif
Table Composition_florale :
Le champ Paye (O N) a une valeur par dfaut : 0
Table Ligne_composition :
Le champ Quantite doit tre positif
ANNEXE 2 : Vues des diffrents utilisateurs du Systme dInformation JARDIN
Vue du fleuriste :

Vue de la rception:

ANNEXE 3 : Le contenu des tables de la base de donnes MAGASIN

ANNEXE 4 : Types de donnes utiliser


Proprit

Type

Pour tous les numros


identifiants
Pour les nombres de places et
capacite
Pour toutes les donnes
alphanumriques

Entier court numric

Pour les donnes montaires


Pour les donnes oui/non

Entier numric
Texte varchar et
prciser une longueur
adapte
Monnaie float
Boolen boolean

TRAVAIL A FAIRE :
ETAPE 1 :
1. Tlcharger la dernire version de Db-main avec le module DEASY de REVER S.A.
aprs enregistrement sur le site. Lenregistrement est ncessaire car un numro de licence
doit tre saisi la premire excution de cet outil. Ce numro de licence va vous tre
envoy ladresse fournie lenregistrement. :
http://www.db-main.eu/?q=fr/node/216
Version complte qui contient tout ce dont vous avez besoin pour utiliser DB-MAIN et
excuter facilement des modules additionnels Java. Inclut le Java Runtime Environment de
Sun (version 1.6.0_06), toute la documentation, quelques exemples et des modules
additionnels.
2. Visionner la vido suivante pour dcouvrir linterface de DB-MAIN :
http://www.db-main.eu/?q=en/node/230
ATTENTION : visionner la vido partir de la minute : 7 car la vido ne correspond pas
tout fait la version actuelle
3

3. Installer Db-main DEASY sur votre machine virtuelle laide du setup tlcharg :
dbm-deasy-915-win-jre-setup.exe
pour la version 9.1.5
4. Dmarrer Db-main :
IMPORTANT pour Windows Vista et Windows 7 : Au premier dmarrage, excutez
DB-MAIN en tant qu'administrateur (clic droit sur le raccourci DB-MAIN et slection de
Excuter en tant qu'administrateur) afin de permettre l'criture du fichier de licence. Pour
les dmarrages suivants, excutez DB-MAIN normalement.
La fentre de dialogue suivante saffiche :

Saisir votre numro de


licence rcupr dans
votre boite mail

5. Ouvrir le projet modle propos en exemple : birt.lun et explorer cette interface


6. Dmarrer un nouveau projet : Jardin , un fichier jardin.lun est cr

7. Crer un nouveau schma nomm : magasin et noter conceptuel pour la version :

Quatre choix possibles pour ce type de schma, valider le choix par dfaut c'est--dire
un modle type entit / association, MCD de la mthode MERISE.
8. Voir laide pour crer votre MCD :
4

Puis dans lordre :

9. Sur le schma dposer les objets ncessaires pour reproduire le MCD


de lannexe 1. Voir la vue du concepteur pour la dfinition des types de donnes.
Enregistrer rgulirement votre schma. (Jai rencontr quelques plantages)
10. Gnrer le modle relationnel du projet JARDIN :
A partir de la fentre du MCD

Remarque : le modle physique de AMC-DESIGNOR est appel ici : modle


relationnel
11. Gnrer le script SQL du modle relationnel du projet JARDIN :
1. Sur la fentre du schma relationnel :

Valider lextraction pour Mysql, un fichier jardin.ddl est cr. Il contient le script SQL de
la future base de donnes MAGASIN

12. Voir le projet termin qui doit correspondre ce schma :

13. Visualiser le script / Eventuellement le modifier selon les paramtres de votre serveur
MySQL, notamment en ce qui concerne le moteur du SGBD (MyISAM ou InnoDB)
14. Dmarrer votre serveur MySQL
15. Importer le script gnr jardin.ddl :

Si tout se passe sans erreur la base de donnes MAGASIN est cre.

Voir la vue de la base de donnes sous MySQL laide de longlet concepteur :

ETAPE 2 : sur le serveur MySQL


1. Se connecter en administrateur : root
2. Rdiger les requtes pour la saisie des donnes voir ANNEXE 3 pour le contenu des
tables
3. Crer les utilisateurs fleuriste et rception avec le mot de passe de votre
connexion sur le serveur du lyce pour chacun et la dfinition respective de leurs
autorisations sur les tables de la base de donnes MAGASIN pour chaque
utilisateur partir des vues de lANNEXE 2
4. Vrifier laide de la requte suivante, les autorisations attribues qui doivent tre
conformes la copie dcran suivante :
Requte pour test :
USE mysql ;
SELECT *
FROM `tables_priv`
Where db = `magasin`
ORDER BY user ;
Copie dcran pour contrle :

5. Se dconnecter du serveur MySQL.

ETAPE 3 :
ATTENTION : Stocker tous les objets crs dans le dossier du TP5_CS_CASJARDIN
1. Tlcharger le connecteur ODBC pour MYSQL et linstaller
2. Aller dans le panneau de configuration, Outils dadministration puis Connexions ODBC
et Crer une connexion ODBC magasin_fleuriste.dsn , type source de donnes
fichier, pour le fleuriste sur la base de donnes MAGASIN selon les copies dcran
suivantes :

A laide du bouton parcourir, stocker votre connexion ODBC magasin_fleuriste.dsn sans


le dossier de ce TP pour faciliter linstallation de la solution sur le poste client.

3. Crer une base de donnes magasin_fleuriste.accdb sous ACCESS

Lier cette base de donnes magasin_fleuriste.accdb laide de la connexion


ODBC magasin_fleuriste.dsn . Voir votre mode opratoire cr au TP4.
4. Tracer les relations entre les tables laide de la commande outils base de donnes
puis relation .
Rsultat de la connexion :

5. Tester les autorisations laide de requtes SQL pour rpondre suivantes :

REQUETE

a)

Afficher la liste des fleurs

b)

Afficher la liste des compositions florales avec pour chacune la


quantit commande pour chaque fleur

c)

Ajouter la composition florale n3 demande par le client Comte qui


est ralise avec 10 tulipes (N de fleur 2)

d)

Supprimer les fleurs coupes de la table fleurs

e)

Modifier la commande 1 qui est maintenant paye

f)

Modifier la quantit en stock des tulipes et des roses, il reste 410


tulipes et 835 roses

FLEURIST
E
(O/N)

g) Afficher le nombre de fleurs par composition florale


h) Supprimer la composition florale n2
i)

Supprimer les lignes composition dont le numro composition est 2

10

6. Crer un formulaire permettant la saisie des compositions florales


Puis saisir les donnes contenues par le formulaire suivant :

7. Crer un tat permettant les compositions florales

8. Fermer la base ACCESS magasin_fleur

11

9. Crer une connexion ODBC magasin_reception.dsn , type source de donnes


utilisateur, pour la reception sur la base de donnes MAGASIN selon la copie
suivante :

10. Crer une base de donnes magasin_reception.accdb sous ACCESS


11. Lier cette base de donnes magasin_ reception.accdb laide de la connexion
ODBC magasin_ reception.dsn . Voir votre mode opratoire cr au TP4.
12. Tracer les relations entre les tables.
13. Tester les autorisations laide de requtes SQL pour rpondre suivantes :

REQUETE

a)

RECEPTI
ON
(O/N)

Afficher la liste des fleurs

b)

Afficher la liste des compositions florales avec pour chacune la


quantit commande pour chaque fleur

c)

Ajouter la composition florale n3 demande par le client Comte qui


est ralise avec 10 tulipes (N de fleur 2)

d)

Supprimer les fleurs coupes de la table fleurs

e)

Modifier la commande 1 qui est maintenant paye

f)

Modifier la quantit en stock des tulipes et des roses, il reste 410


tulipes et 835 roses

g) Afficher le nombre de fleurs par composition florale


h) Supprimer la composition florale n2
12

i)

Supprimer les lignes composition dont le numro composition est 2

13