Easy-Micro

ESPACEMEMBRE XML
XSQL

Requête SQL avec XML

XSQL est la combinaison du XML et du langage SQL (Structured Query Language). Un fichier XSQL (marequete.xsql) renferme donc une requête SQL dans des balises XML. XSQL, aussi nommée Oracle XSQL est une servlet Java 2. Elle est disponible gratuitement sur le site d'Oracle dans le XML Developers Kit (XDK).

Voici un exemple de fichier XSQL (marequete.xsql) :
<?xml version="1.0"?>
<page xmlns:xsql="urn:oracle-xsql" connection="maconnexion">
<xsql:include-request-params />
<xsql:query rowset-element="macompile" row-element="mp3">
     SELECT * FROM mp3 WHERE titre LIKE '%{@marecherche}%'; </xsql:query>
</page>

Cette exemple de requête est stockée par exemple dans un dossier nommée monxsql sur le port 8080 du serveur d'application. Il faut saisir l'URL suivante dans un navigateur qui appel le document XSQL en lui passant un paramètre HTTP GET marecherche=day

http://127.0.0.1:8080/monxsql/marequete.xsql?marecherche=day

La réponse est un fichier XML qui contien le résultat de la requête.

Explication
- Ce XSQL se connecte sur "maconnexion" défini dans XSQLConfig.xml (qui pointe sur une base de donnée).
- La commande "include-request-params" inclue les paramètres HTTP (get, post, session...) dans le XML.
- La commande query effectue la requête XSQL, nomme l'élément racine du document (macompile) et chaque éléments d'une ligne.

Il est possible de faire fonctionner le XSQL dans divers environnements (Windows, Unix...) avec divers SGBDR (MySql, Oracle, SQLServer...) et divers serveur d'application Web comme Tomcat ou Apache.
En fait c'est grâce au XDK d'Oracle que tout ceci est possible. Il faut donc installer le XDK mais pas nécessairement le serveur de base de données d'Oracle.
XDK signifie XML Developers Kit et il est téléchargeable sur
http://www.oracle.com/technology/tec...10g/index.html

Voir chaque étape de la configuration d'un serveur de test dans ce document : http://membres.lycos.fr/benoitgenot/TutorielXSQL.pdf
Vous y trouverez tous les détails du fichier "XSQLConfig.xml" ainsi que le fichier "web.xml". Résultat magique...

Voir aussi le XML-SQL pour le serveur Microsoft SQLServer et le langage de requête XML XQuery (associé à XPath)


< Page précédente XML