> Tech > Un exemple d’activation XML

Un exemple d’activation XML

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

La première chose que la plupart des développeurs SQL Server vont tenter de faire, c'est de convertir des données relationnelles standard au format XML. De nombreuses entreprises vont également développer de nouvelles applications. Pourtant, la première priorité de gestion va consister à  tirer rapidement profit de l'existant en publiant les

Un exemple d’activation XML

données existantes au format XML. Voici un exemple simple, qui
vous mettra le pied à  l’étrier.

Avant tout, créez un utilisateur et un mot de passe pour la base de données Northwind,
à  utiliser pour toutes les requêtes en rapport avec XML. Puis, dans IIS, sélectionnez
Programs, Microsoft SQL Server 2000, Configure SQL XML Support pour atteindre
l’écran permettant de configurer les extensions XML SQL Server de IIS.

L’écran 2 illustre l’écran de configuration, avec la plupart des options par défaut
sélectionnées. Cependant, j’ai sélectionné Allow URL queries afin de pouvoir
effectuer des requêtes de ce type. Comme je l’ai expliqué précédemment, une requête
URL est une instruction SQL intégrée dans l’URL d’une machine IIS configurée pour
prendre en charge XML dans SQL Server. Avec les requêtes de type URL, c’est l’URL
qui transmet l’instruction SQL en tant que paramètre unique. J’ai également configuré
les paramètres de connexion pour utiliser un compte SQL Server déjà  défini. (à 
noter que les SQL Server Books Online (BOL) font actuellement référence à  une
racine virtuelle de Nwind. On voudra par conséquent peut-être modifier la valeur
de la racine virtuelle pour qu’elle soit cohérente).

J’utilise le serveur Web et SQL Server 2000 sur la même installation de Windows
2000 (W2K). Si on installe SQL Server 2000 sur une machine fonctionnant déjà  avec
SQL Server 7.0, il faut s’assurer de faire référence à  la bonne version de SQL
Server.

Voyons à  présent un exemple de requête URL :

http://auril/
Northwind?sql=
SELECT+CustomerID,
ContactName+
FROM+Customers+
FOR+XML+RAW

auril représente le nom de la machine sur laquelle se trouve IIS ; /Northwind
se rapporte au répertoire virtuel défini pour le support XML et ?sql= est
le paramètre unique décrivant une instruction SQL. Le reste de la requête constitue
l’instruction SQL réelle encodée de manière à  être sécurisée pour la transmission
en tant qu’URL. SQL Server reçoit l’instruction de la manière suivante :

SELECT CustomerID, ContactName
FROM Customers FOR XML RAW

La requête indique XML RAW, ce qui a pour effet de renvoyer chaque enregistrement
en tant qu’élément distinct, les zones de chaque enregistrement étant répertoriés
comme des attributs séparés de cet élément. L’écran 3 illustre un exemple de résultat
de cette requête.

Dans les applications n-tiers utilisant un nombre limité de procédures cataloguées
avec des paramètres de contrôle d’accès aux données, on peut modifier le schéma
de la base de données sans modifier les codes clients, et ce en modifiant simplement
les procédures cataloguées correspondantes. Considérez la procédure cataloguée
de la base de données Northwind du listing 1. Pour rendre cette procédure cataloguée
compatible XML, créez une nouvelle procédure cataloguée en incluant les lignes
surlignées dans le listing 2.
Envoyez ensuite une requête « execute customerodersxml ‘VINET' » à  SQL Server, en
saisissant l’URL suivante dans IE 5.0 :

http://auril/northwind?sql=
execute+custordersordersxml+
VINET

On récupère les résultats dans son navigateur sous la forme d’enregistrements
au format XML, comme le montre l’écran 4. Cet exemple utilise la convention T-SQL
« execute  » mais les extensions XML de SQL Server pour IIS prennent également
en charge la fonction CALL de type ODBC.

Cette requête illsutre des fonctionnalité de base, mais utiles. En ajoutant XSL,
on peut rapidement générer un document HTML contenant un rapport de suivi de commandes
client. Il suffit de combiner ce document XML à  un document XSL (disponible en
ligne à  l’adresse http://www.sqlmag.com), ce qui représente un total d’environ
40 lignes de code.

Les avantages de la méthode XML par rapport à  la méthode ASP traditionnelle résident
dans le fait que XML offre plus de souplesse dans la présentation de données simples,
et que l’on peut le mettre en oeuvre rapidement. Pour vous en illustrer toutes
les possibilités, vous pouvez vous attendre à  avoir de nombreuses applications
exemples avec la version définitive de SQL Server 2000.

Téléchargez cette ressource

Préparer l’entreprise aux technologies interconnectées

Préparer l’entreprise aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010