Beibehaltungsszenario für XML-Recordsets

In diesem Szenario erstellen Sie eine Active Server Pages-Anwendung (ASP), die den Inhalt eines Recordset-Objekts direkt im ASP-Response-Objekt speichert.

Hinweis

Dieses Szenario erfordert, dass auf Ihrem Server Internet Information Server 5.0 (IIS) oder höher installiert ist.

Das zurückgegebene Recordset wird in Internet Explorer mithilfe eines DataControl-Objekts (RDS) angezeigt.

Die folgenden Schritte sind erforderlich, um dieses Szenario zu erstellen:

  • Einrichten der Anwendung

  • Abrufen der Daten

  • Senden der Daten

  • Empfangen und Anzeigen der Daten

Schritt 1: Einrichten der Anwendung

Erstellen Sie ein virtuelles IIS-Verzeichnis namens „XMLPersist“ mit Skriptberechtigungen. Erstellen Sie im Ordner, auf den das virtuelle Verzeichnis verweist, zwei neue Textdateien namens „XMLResponse.asp“ und „Default.htm“.

Schritt 2: Abrufen der Daten

In diesem Schritt schreiben Sie den Code, um ein ActiveX Data Objects-Recordset (ADO) zu öffnen und zum Senden an den Client vorzubereiten. Öffnen Sie die Datei „XMLResponse.asp“ in einem Text-Editor (z. B. Editor), und fügen Sie den folgenden Code ein.

<%@ 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  

Denken Sie daran, den Wert des Data Source-Parameters in strCon in den Namen Ihres Microsoft SQL Server-Computers zu ändern.

Lassen Sie die Datei geöffnet, und fahren Sie mit dem nächsten Schritt fort.

Schritt 3: Senden der Daten

Nachdem Sie nun über ein Recordset verfügen, müssen Sie es an den Client senden, indem Sie es als XML im ASP-Response-Objekt speichern. Fügen Sie am Ende der Datei „XMLResponse.asp“ den folgenden Code hinzu.

  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  
%>  

Beachten Sie, dass das ASP-Response-Objekt als Ziel für die Save-Methode des Recordsets angegeben wird. Das Ziel der Save-Methode kann ein beliebiges Objekt sein, das die IStream-Schnittstelle unterstützt, z. B. ein Stream-Objekt (ADO) oder ein Dateiname, der den vollständigen Pfad des Speicherorts für das Recordset enthält.

Speichern und schließen Sie die Datei „XMLResponse.asp“, bevor Sie mit dem nächsten Schritt fortfahren. Kopieren Sie auch die Datei „adovbs.inc“ aus dem Standardinstallationsordner der ADO-Bibliothek in den Ordner, in dem Sie die Datei „XMLResponse.asp“ gespeichert haben.

Schritt 4: Empfangen und Anzeigen der Daten

In diesem Schritt erstellen Sie eine HTML-Datei mit einem eingebetteten DataControl-Objekt (RDS), das auf die Datei „XMLResponse.asp“ verweist, um das Recordset abzurufen. Öffnen Sie Datei „default.htm“ in einem Text-Editor (z. B. Editor), und fügen Sie den folgenden Code hinzu. Ersetzen Sie „sqlserver“ in der URL durch den Namen Ihres Servers.

<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>  

Schließen Sie die Datei „default.htm“, und speichern Sie sie in dem Ordner, in dem Sie die Datei „XMLResponse.asp“ gespeichert haben. Öffnen Sie in Internet Explorer 4.0 oder höher die URL https://sqlserver/XMLPersist/default.htm, und beobachten Sie die Ergebnisse. Die Daten werden in einer gebundenen DHTML-Tabelle (Dynamic HTML) angezeigt. Öffnen Sie jetzt die URL https:// sqlserver /XMLPersist/XMLResponse.asp, und beobachten Sie die Ergebnisse. Die XML-Datei wird angezeigt.

Weitere Informationen

Save-Methode
Beibehalten von Datensätzen im XML-Format