Licence Pro RTICPMO
Responsable des Technologies d’Information et de la Communication zn Petite et Moyennes Organisations
Licence Pro RTICPMO, Université Toulouse 1, P. A. France, 31042 Toulouse Cedex,
Secrétariat : tél 05 61 63 35 11, email [email protected]
Bases de données
ORACLE
L’environnement d’Oracle
Développement d’applications clientes sous Developer 2000 / Forms Builder
Pierre-Jean Charrel et Jean-Marc Thévenin
P.-J. Charrel & J.-M. Thévenin, Université Toulouse 1, Licence Pro RTICPMO page
2
Sommaire
PARTIE I : L’environnement d’Oracle .................................................................................... 4
TP 1Connexion des Clients au Serveur Oracle, Pratique de SQL avec l'éditeur SQL-
Worksheet ............................................................................................................................................ 4
1. Objectifs ..........................................................................................................................................4
2. Environnement ...............................................................................................................................4
2.1. Les outils Oracle ..................................................................................................................................... 4
2.2. La base de données support des TP ........................................................................................................ 5
3. Actions ............................................................................................................................................6
3.1. A propos de l'outil SQL-Net8 Easy Config ............................................................................................. 6
3.2. Lancer l'outil Administration Toolbar ..................................................................................................... 7
3.3. Lancer l'outil SQL Worksheet ................................................................................................................. 7
3.4. Lancer l'outil Admin ODBC ................................................................................................................... 8
3.5. Lancer Microsoft ACCESS ..................................................................................................................... 8
3.6. Traiter les Requêtes SQL suivantes ........................................................................................................ 9
TP 2 Traduction de règles de gestion à l'aide de déclencheurs Bases de Données .............. 10
1. Objectifs ........................................................................................................................................10
2. Environnement .............................................................................................................................10
3. Actions ..........................................................................................................................................10
PARTIE II : Développement d’applications clientes avec Developper 2000 ........................ 14
TP 3 Le concept de formulaire dans Developer 2000 ............................................................ 14
1. Rappel : Les trois principaux objets d’un module ...................................................................14
Bloc (Block) ................................................................................................................................................. 14
Elément (Item) ............................................................................................................................................. 15
Canevas (Canvas) ......................................................................................................................................... 15
2. Création d'un formulaire basique ..............................................................................................16
3. Création d’un formulaire comportant un sous formulaire .....................................................16
4. Exercice .........................................................................................................................................18
TP 4 Listes de valeurs (LOV) et déclencheurs d'applications. Création de boutons et de
déclencheurs associés à des LOV écrits en PL/SQL ........................................................................ 19
1 Rappel : la gestion des clés étrangères ........................................................................................19
2. création d’un formulaire exploitant une LOV ..........................................................................19
2.1. Exercice : expérimentation des LOV .................................................................................................... 19
2.2. Concepts autour des LOV ..................................................................................................................... 20
3. Améliorer l'utilisation d'une LOV .............................................................................................22
4. Déclencheurs d’application (triggers) ........................................................................................22
4.1. Exemple : contrôler l’affichage d’une LOV dans un formulaire .......................................................... 23
4.2. Déclencheurs d’application et déclencheurs base de données ............................................................... 23
5. Gestion automatique de l’affichage d’une LOV .......................................................................24
Solution 1 : création d’un déclencheur WHEN-MOUSE-DOUBLECLICK pour l’item NJ ....................... 24
Solution 2 : création d’un déclencheur PRE-TEXT-ITEM pour l’élément NJ ............................................ 24
Solution 3 : création d’un bouton avec un déclencheur WHEN-BUTTON-PRESSED ............................... 25
6. Gestion de LOV dynamiques ......................................................................................................25
P.-J. Charrel & J.-M. Thévenin, Université Toulouse 1, Licence Pro RTICPMO page
3
TP 5 Synchronisations entre les Blocs de données (FORMS) et la Base de Données ......... 27
1. Notion de Bloc basé / non basé ...................................................................................................27
1.1. Remplissage du tableau d’un Bloc avec des données stockées dans la Base de données ...................... 27
1.2. Actualisation de la Base de données via le tableau d’un Bloc .............................................................. 27
2. Concevoir l’interface d’un Bloc basé .........................................................................................28
2.1. Utilisation d'alertes ................................................................................................................................ 28
2.2. Contrôle du remplissage d’un Bloc ....................................................................................................... 29
2.3. Restriction dynamique du remplissage d’un Bloc ................................................................................. 30
2.4. Afficher des données calculées dans un Elément non basé ................................................................... 30
3. Corrélation entre les Blocs, l’actualisation de la Base de Données et les Déclencheurs
d’application ...............................................................................................................................................31
3.1 Création d’un bloc non basé comportant les boutons Valider et Annuler .............................................. 31
3.2. Gestion d’une contrainte d’intégrité au niveau de l’application ............................................................ 32
3.3. Création d’une contrainte sur un élément comparant les valeurs avant maj et après maj ...................... 33
3.4. Question de cours .................................................................................................................................. 34
TP 6 Gestion spécifique des blocs maître/détail lorsqu'il n'y a pas de jointure directe entre
les blocs. Gestion du remplissage des blocs détails à l'aide de déclencheurs écrits en PL/SQL .... 35
1 Position du problème ....................................................................................................................35
2. Utiliser la fonction Execut_Query dans un déclencheur déclencheur ON-POPULATE-
DETAILS ....................................................................................................................................................36
3. Création d’un bloc non basé affichant des données .................................................................37
4. Exercice : Ajout d'éléments calculés à ce formulaire ...............................................................39
TP 7 Compléments .................................................................................................................. 40
1. Les variables globales ..................................................................................................................40
2. Les variables système ..................................................................................................................40
3. Gestion de l’affichage de messages d’erreur .............................................................................41
4. Utilisation de séquences et des sous-programmes PL/SQL .....................................................42
4.1. Objectif des séquences : éviter les problèmes de saisie sur les clés. ..................................................... 42
4.2. Application : génération automatique du n° d'équipe ............................................................................ 42
5. A propos des déclencheurs Pre-Query et Post-Query ..............................................................43
Rappel .......................................................................................................................................................... 44
P.-J. Charrel & J.-M. Thévenin, Université Toulouse 1, Licence Pro RTICPMO page
4
PARTIE I : L’environnement d’Oracle
TP 1 Connexion des Clients au Serveur Oracle,
Pratique de SQL avec l'éditeur SQL-Worksheet
1. Objectifs
- Etablir une connexion entre une machine de la salle de TP et le serveur Oracle (outil SQLNet
Easy Config)
- Pratique de SQL sur une petite BD
- Utilisation de l'éditeur SQL Worksheet d’Oracle
2. Environnement
2.1. Les outils Oracle
Tous les outils Oracle sont logés dans le répertoire Programme \ Bases de données \ Oracle. Les
produits suivants sont installés pour l’administration d’une instance Oracle,:
Administration Toolbar
bandeau d'icônes d'outils Oracle
Backup Manager
outil de sauvegarde / restauration d'une base de données Oracle (Non
étudié)
Storage Manager
définit les paramètres de stockage de la base de données : espaces
logique, fichiers de données…
Schema Manager
équivalent graphique de la partie LDD de SQL qui gère les tables, vues,
synonymes
SQL Worksheet
éditeur SQL plein écran
Data Manager
permet de transférer des données vers et depuis des bases de données
Oracle (Export/Import). Nécessite l'activation de l'outil Enterprise
Manager
Instance Manager
permet de démarrer ou d'arrêter une base de données, de visualiser et de
modifier ses paramètres d'initialisation, de créer des configurations de
démarrage personnalisées, de gérer les transactions en suspens et les
sessions utilisateur
Security Manager
gestion des utilisateurs (noms, mots de passe, droits…) de toutes les
bases de données Oracle
SQL Plus
éditeur "ligne" de SQL et de son extension SQL + (requêtes SQL
P.-J. Charrel & J.-M. Thévenin, Université Toulouse 1, Licence Pro RTICPMO page
5
paramètrées, éditions de tableau plus soignée…)
SQL-Net8 Easy Config
gestion des connexions entre une machine cliente et les bases de
données Oracle 8 installées sur les serveurs accessibles depuis cette
machine
Admin ODBC
gestion d'une liaison entre un logiciel client (ex. ACCESS) et un serveur
Oracle qui respecte le protocole ODBC (Open Data Base Connectivity)
De plus Programme \ Bases de données \ Oracle donne accès à :
- Documentation en ligne : ce répertoire contient les entrées, au format HTML ou autres, vers la
documentation en ligne des produits Oracle.
- Forms & Reports : regroupe plusieurs outils de développement d'applications, dont Forms
Builder.
Les écrans de connexion à un outil Oracle ont toujours la forme suivante :
Cet écran permet de ce connecter au serveur Oracle. Il permet à l’utilisateur de s’identifier
(gestion des droits d’accès). De plus, il permet d’indiquer l’instance (base de données) à laquelle
l’utilisateur souhaite se connecter. Cela ce fait au travers d’un service : c'est un alias facile à retenir
par l’utilisateur, qui regroupe à la fois un nom de protocole réseau, l’adresse d’un serveur et le nom
d’une instance sur ce serveur. Attention, suivant le client (SQL+, SQL Worksheet,…) les libellés
des trois zones peuvent changer. Ainsi l’intitulé “Service” peut s’appeler “Chaine de connection”;
dans tous les cas, la valeur attendue est le nom d’un service.
2.2. La base de données support des TP
Voici le schéma Oracle simplifié de la base de données relatif à la Coupe du Monde de
football 1998 :
EQUIPES ( NE, NATIONALITE, PALMARES )
JOUEURS ( NJ, NOM, PRENOM, POSITION, MAILLOT, NE )
MATCHS ( NM, LIEU, DATE_R, NE_ RECEVANTE, NE_DEPLACANTE, ENJEU,
SCORE_RECEVANTE, SCORE_ DEPLACANTE)
PARTICIPANTS (NJ, NM, NB_BUTS, CARTON_JAUNE, CARTON_ROUGE )
Remarques :
1 / 44 100%