
3. Passerelle web/SGBD 
Son  rôle  est  d’interpréter  une  ou  plusieurs  requêtes  SQL  sur  le  SGBD  et  de 
renvoyer le résultat récupéré habillé en HTML. L’interprétation des requêtes SQL se 
fait  dans  la  même  transaction.  L’originalité  de  cette  passerelle  réside  dans  le 
paramétrage  assez  poussé  qu’elle  permet  au  niveau  de  l’habillage  HTML.  L’idée 
consiste à utiliser le dictionnaire de données pour obtenir de l’information utile pour 
la  génération.  Par  exemple,  simplement  à  partir  du  nom  d’une  relation  on  peut 
générer un formulaire permettant l’insertion d’un tuple dans cette relation. 
Pour  l’instant  la  passerelle  est  implantée  sous  forme  d’un  programme  de  type 
CGI écrit en langage C en utilisant l’interface de programmation Pro*C d’Oracle. Du 
côté client, la passerelle se programme via un ensemble de variables dont le nom est 
fixé (par exemple UID pour la chaîne de connexion Oracle, SQLSTATEMENT pour 
les instructions SQL que l’on veut interpréter, …).  
Pour  augmenter  les  fonctionnalités  de  la  passerelle,  nous  avons  introduit 
plusieurs modes d’interaction : 
-mode normal : la passerelle interprète les instructions SQL et habille le résultat 
en HTML ; 
-modes  insertion/suppression/mise  à  jour :  la  passerelle  génère  un  formulaire 
HTML  et  du  code  Javascript  permettant  l’insertion/suppression/mise  à  jour  d’un 
tuple dans une relation donnée en paramètre ; 
-mode  QBE :  la  passerelle  génère  un  formulaire  HTML  et  du  code  Javascript 
permettant l’interrogation de type QBE d’une relation donnée en paramètre ; 
-mode  hypertexte :  la  passerelle  interprète  les  instructions SQL  et  s’il  s’agit de 
requêtes  de  type  SELECT,  elle  génère  pour  chaque  valeur  de  clé  étrangère  un 
formulaire qui  va  permettre  l’accès  au  tuple  pointé  par  la  clé.  Ce mode permet de 
naviguer «à la hypertexte » dans une base de données via les clés étrangères ; 
-mode  copie :  la  passerelle  interprète  une  requête  de  type  SELECT  et  génère 
pour  chaque  valeur  retournée  un  formulaire  qui  permet  la  recopie  de  cette  valeur 
dans une variable du formulaire. Ce mode permet la construction de menus déroulant 
dont les valeurs sont extraites de la base de données. 
4. Bilan et perspectives 
Cet environnement de prototypage est complètement opérationnel et a été utilisé 
dans  de  nombreux  projets  d’élèves  de  l’INT  depuis  maintenant  plusieurs  années. 
Nous  avons,  par  exemple,  développé  un interprète  SQL  entièrement  web  qui  nous 
permet de ne plus utiliser de produits comme sqlplus d’Oracle. Nous l’utilisons aussi 
dans  le  cadre  de  travaux  pratiques  et  il  permet  de  faire  réaliser  aux  élèves  une 
application base de données dans un délai très court (3 à 6 heures). Il est également 
utilisé dans le cadre d’applications de gestion internes à l’INT. Il est disponible sur