ALSI
STS2
Architecture Client/Serveur
Le middleware
Le 16/04/17
page 1/4
D:\769801336.doc
1. COMPETENCES A ATTEINDRE A LA FIN DU TP
Comprendre l’intérêt d’un middleware.
Mettre en œuvre un C/S de données
Mettre en œuvre un C/S de traitement
2. LE CONTEXTE
On travaille sur la base de données FFMC : Fédération Française de Moto Cross qui contient 3 tables :
ligue, club et licencié.
Les IHM sont sous ACCESS , dans FFMC_IHM.MDB.
Les données vont être implantées successivement sur les serveurs de BD MySQL puis ORACLE. On
veut montrer la facilité de mise à jour des clients si on utilise un middleware : ODBC.
3. ETAPES DU TP
Implanter la base de données FFMC
sous MySQL
Créer une base de données sous MySQL
Exécuter les scripts de création des tables
Exécuter les scripts de création des données
Client ACCESS pour la BD MySQL
Paramètrer une DSN système pour MySQL
Lier les tables dans ACCESS
Implanter la base de données FFMC
sous ORACLE.
Créer une base de données sous MySQL
Exécuter les scripts de création des tables
Exécuter les scripts de création des données
Client ACCESS pour la BD ORACLE
Installer la connexion Client Oracle/Serveur Oracle
avec Oracle Net
Paramètrer une DSN système pour Oracle
Lier les tables dans ACCESS
4. IMPLANTER LA BASE DE DONNEES FFMC SOUS MYSQL
On travaille à partir de l’interface texte de MySQL.
Créer une base de données CREATE DATABASE BDFFMC ;
USE BDFFMC ;
Exécuter le script de création des tables : SOURCE Mysql\CreBdFfmc.sql ;
Vérifier la création des tables SHOW TABLES ;
Exécuter le script de création des données : SOURCE Mysql\InsertBDFFMC.sql ;
Vérifier la création des lignes SELECT * FROM LICENCIE ;
ALSI
STS2
Architecture Client/Serveur
Le middleware
Le 16/04/17
page 2/4
D:\769801336.doc
5. PARAMETRER UNE DSN SYSTEME POUR MYSQL
ALSI
STS2
Architecture Client/Serveur
Le middleware
Le 16/04/17
page 3/4
D:\769801336.doc
6. CLIENT ACCESS POUR LA BD MYSQL
Ouvrir ffmc_ihm.mdb dans ACCESS
Lier les tables :
1. Sur l’onglet tables, clic droit et choisir Lier les tables
Ou à partir de menu fichier\Données externes\ Lier les tables
2. Dans la boite de dialogue Attacher : Choisir ODBC databases puis votre DSN : DsnBDFFMC.
3. L’IHM vous propose la liste des tables existantes dans la base.
4. Attacher toutes les tables
Tester le formulaire et la mise à jour des données
à partir du client
à partir du serveur
7. IMPLANTER LA BASE DE DONNEES FFMC SOUS ORACLE
On travaille à partir de SQLPlus.
Créer un utilisateur CREATE USER AdminFFMC …;
Connect AdminFFMC…
Exécuter le script de création des tables : START oracle\CreBdFfmc.sql ;
Vérifier la création des tables SELECT TABLE_NAME FROM TABS ;
Exécuter le script de création des données : START oracle\InsertBDFFMC.sql ;
Vérifier la création des lignes SELECT * FROM LICENCIE ;
8. ADMINISTRER LA BD SOUS ORACLE
8.1. Installer la connexion Client Oracle/Serveur Oracle avec Oracle Net
Pour que le client puisse se connecter au Serveur Oracle, il faut paramétrer le middleware propriétaire
d’Oracle : Oracle Net.
Lancer l’interface graphique Assistant Configuration Oracle Net
Saisir un nom de connexion (équivalent au DSN) et paramétrer la connexion : protocole de transport et
serveur cible. (couches du modèle OSI voisines du middleware)
Architecture à obtenir :
SQLPlus Client Middleware propriétaire Oracle Net SGBD
8.2. Tester la base directement avec le serveur Oracle
A partir de SQLPLus, tester l’accès à la table LICENCIE par un
SELECT * FROM licencie ;.
SQLPLus
ORACLE
Serveur
ALSI
STS2
Architecture Client/Serveur
Le middleware
Le 16/04/17
page 4/4
D:\769801336.doc
8.3. Reparamètrer la DSN ODBC pour Oracle au lieu de MySQL
Architecture à obtenir :
Client Middleware ODBC Middleware Oracle Net SGDB
8.4. Tester les IHM à partir du client FFMC_IHM.MDB
Idem à MySQL
9. SE CONNECTER A UNE AUTRE BD ORACLE
En principe, chaque BD ne dispose que des données de son club.
Que faut-il faire pour se connecter aux données de la BD de votre voisin ?
10. EXECUTER UNE PROCEDURE A PARTIR DU CLIENT
La BD Oracle dispose d’une procédure Stat qui copie dans une table les licenciés ayant eu au moins 1
victoire. Lancer cette procédure à partir de ACCESS.
En l’intégrant dans une requête ACCESS :
En l’intégrant dans le code VBA d’un formulaire :
Dim MyDB As Database
Dim MyQuery As QueryDef
'Initialisations
Set MyDB = CurrentDb()
Set MyQuery = MyDB.CreateQueryDef("NomRequete")
MyQuery.Connect = "ODBC;DSN= ????;UID= ???;PWD=????;
MyQuery.ReturnsRecords = False
' Lance la procédure stockées
MyQuery.SQL = "BEGIN NomProcedure; END;"
DoCmd.OpenQuery " NomRequete"
Access
CnxOracle
ORACLE
Serveur
DsnBdFFMC
1 / 4 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !