Avec SQL Server 2000, on peut saisir une instruction SQL dans
une URL de Microsoft Internet Explorer (IE) 5.0 et récupérer des enregistrements
au format XML. La pseudo-requête URL suivante présente les divers composants
de la requête :
http://
?sql=+FOR+XML+RAW
Avant tout, la requête utilise le protocole HTTP,
Accès à SQL Server via HTTP

ce qui ouvre
une base de clients assez large pour tout système que l’on peut créer. La requête
dirige ensuite sa demande vers le serveur Web, Microsoft Internet Information
Server (IIS), par le biais d’une racine virtuelle qu’il faut configurer sur
le serveur IIS pour utiliser les extensions XML de SQL Server.
Ensuite, la requête demande les données désirées. Lors d’une
demande de données auprès du serveur Web, on utilise généralement un HTML FORM
avec l’une des deux méthodes standard de HTML FORM : GET ou POST. GET transmet
les données du formulaire client au serveur Web sous la forme de paires nom/valeur
accolées à l’URL. Cependant, ce mécanisme présente plusieurs inconvénients,
notamment une longueur d’URL et une sécurité limitées. POST, la méthode favorite
des développeurs, transmet les données du formulaire sous la forme de paires
nom/valeur stockées à l’intérieur même du corps de la requête HTTP. Les exemples
de cet article utilisent la méthode GET pour envoyer les requêtes à la base
de données, afin que l’on puisse voir la requête de données.
On peut également utiliser des instructions SQL ou des procédures
cataloguées pour accéder à des données au format XML. Ou on peut exécuter un
template XML, un document XML contenant une ou plusieurs requêtes, instructions
ou grams de mise à jour valides. Les templates sont structurés de la manière
suivante :
name2=value2’> sql statement(s)
On peut invoquer des templates en les intégrant à la requête
GET ou POST ou en les appelant comme des fichiers sauvegardés dans le répertoire
virtuel du serveur Web.
Si les requêtes SQL sont longues, IE ne peut pas les afficher
dans sa zone de saisie adresse, et on perd du temps à les saisir encore et encore
pendant les tests. Pour toutes ces raisons et bien d’autres, on peut stocker
des requêtes templates dans un fichier du répertoire virtuel, puis y faire référence
comme suit :
http://auril/Northwind/myquery.xml
La requête myquery.xml demande des informations sur la commande correspondant
à une ID d’un client donné, et se présente de la manière suivante :
SELECT OrderID, OrderDate, RequiredDate,
ShippedDate FROM ORDERS
WHERE CustomerID=? ORDER BY OrderID XML RAW
On peut aussi utiliser des paramètres avec les templates de requêtes, puis associer
les requêtes avec XSL (Extensible Style Language) pour offrir un substitut rapide
au code ASP (Active Server Pages) qui interroge une base de données et formate
les résultats en tables HTML. XSL indique comment formater ou afficher les données
XML. L’utilisation de requêtes modèles avec les feuilles de style XSL de cette
manière ressemble à l’utilisation de fichiers HTX (Hypertext Markup Language
eXtension) avec IDC (Internet Database Connector), remplacés et améliorés par
ASP. Même si les fonctions XML de SQL Server ne peuvent pas à elles seules remplacer
ASP, pour la récupération simple de données, les fonctions XML sont plus rapides
et plus faciles à mettre en oeuvre. L’écran 1 illustre le résultat de la requête
simple ci-dessous, qui combine un template XML et XSL :
http://auril/Northwind/myquery
.xml?CustomerID=vinet&xsl=ptab.xsl
Téléchargez cette ressource

Prédictions 2025 des menaces persistantes avancées
L'analyse et l'évolution du paysage des menaces persistantes avancées (APT) et des conséquences sur vos infrastructures IT. Découvrez la synthèse des prédictions, tendances et recommandations pour 2025 avec les experts Kaspersky.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Protégez l’accès non authentifié de vos réunions
- Télécommunications et durabilité : les défis d’une transition verte dans un secteur en mutation
- Vulnerability Operation Center : concepts, mise en œuvre et exploitation
- Faire face à l’évolution des cyberattaques : l’urgence d’une cybersécurité proactive
- Le temps où le RSSI était tenu pour seul responsable est révolu – la responsabilité incombe désormais à toute l’entreprise
