Scénario de persistance des recordsets XML
Dans ce scénario, vous allez créer une application ASP (Active Server Pages) qui enregistre le contenu d’un objet Recordset directement dans l’objet Response ASP.
Notes
Ce scénario nécessite qu’Internet Information Server 5.0 (IIS) ou version ultérieure soit installé sur votre serveur.
Le Recordset retourné est affiché dans Internet Explorer à l’aide d’un DataControl Object (RDS).
Les étapes à suivre pour créer ce scénario sont les suivantes :
Configurer d’application
Obtenir les données
Envoyer les données
Recevoir et afficher les données
Étape 1 : Configurer l’application
Créez un répertoire virtuel IIS nommé « XMLPersist » avec des autorisations de script. Créez deux nouveaux fichiers texte dans le dossier vers lequel pointe le répertoire virtuel, respectivement nommés « XMLResponse.asp » et « Default.htm ».
Étape 2 : Obtenir les données
Dans cette étape, vous allez écrire le code pour ouvrir un Recordset ADO et préparer son envoi au client. Ouvrez le fichier XMLResponse.asp dans un éditeur de texte tel que le Bloc-notes, puis insérez le code suivant.
<%@ language="VBScript" %>
<!-- #include file='adovbs.inc' -->
<%
Dim strSQL, strCon
Dim adoRec
Dim adoCon
Dim xmlDoc
' You will need to change "MySQLServer" below to the name of the SQL
' server machine to which you want to connect.
strCon = "Provider=sqloledb;Data Source=MySQLServer;Initial Catalog=Pubs;Integrated Security=SSPI;"
Set adoCon = server.createObject("ADODB.Connection")
adoCon.Open strCon
strSQL = "SELECT Title, Price FROM Titles ORDER BY Price"
Set adoRec = Server.CreateObject("ADODB.Recordset")
adoRec.Open strSQL, adoCon, adOpenStatic, adLockOptimistic, adCmdText
Veillez à modifier la valeur du paramètre Data Source
en strCon
pour qu’elle corresponde au nom de votre ordinateur Microsoft SQL Server.
Laissez le fichier ouvert et passez à l’étape suivante.
Étape 3 : Envoyer les données
Maintenant que vous disposez d’un Recordset, vous devez l’envoyer au client en l’enregistrant au format XML dans l’objet Response ASP. Ajoutez le code suivant au bas du fichier XMLResponse.asp.
Response.ContentType = "text/xml"
Response.Expires = 0
Response.Buffer = False
Response.Write "<?xml version='1.0'?>" & vbNewLine
adoRec.save Response, adPersistXML
adoRec.Close
Set adoRec=Nothing
%>
Notez que l’objet Response ASP est spécifié comme destination pour la méthode Save du Recordset. La destination de la méthode Save peut être tout objet prenant en charge l’interface IStream, tel qu’un objet Stream (ADO) ou un nom de fichier incluant le chemin d’accès complet de l’emplacement où enregistrer le Recordset.
Enregistrez et fermez le fichier XMLResponse.asp avant de passer à l’étape suivante. Copiez également le fichier adovbs.inc, du dossier d’installation de la bibliothèque ADO par défaut vers le dossier dans lequel vous avez enregistré le fichier XMLResponse.asp.
Étape 4 : Recevoir et afficher les données
Dans cette étape, vous allez créer un fichier HTML avec un DataControl Object (RDS) incorporé pointant vers le fichier XMLResponse.asp pour obtenir le Recordset. Ouvrez le fichier default.htm dans un éditeur de texte tel que le Bloc-notes, puis ajoutez le code suivant. Dans l’URL, Remplacez « sqlserver » par le nom de votre serveur.
<HTML>
<HEAD><TITLE>ADO Recordset Persistence Sample</TITLE></HEAD>
<BODY>
<TABLE DATASRC="#RDC1" border="1">
<TR>
<TD><SPAN DATAFLD="title"></SPAN></TD>
<TD><SPAN DATAFLD="price"></SPAN></TD>
</TR>
</TABLE>
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="RDC1">
<PARAM NAME="URL" VALUE="XMLResponse.asp">
</OBJECT>
</BODY>
</HTML>
Fermez le fichier default.htm et enregistrez-le dans le dossier dans lequel vous avez enregistré le fichier XMLResponse.asp. À l’aide d’Internet Explorer 4.0 ou version ultérieure, ouvrez l’URL https://sqlserver/XMLPersist/default.htm et observez les résultats. Les données s’affichent dans une table DHTML liée. Ouvrez maintenant l’URL https:// sqlserver /XMLPersist/XMLResponse.asp et observez les résultats. Le XML s’affiche.