Speicherszenario für XML-Recordset
Gilt für: Access 2013, Office 2013
In diesem Szenario erstellen Sie eine ASP-Anwendung (Active Server Pages), die den Inhalt eines Recordset -Objekts direkt in das ASP-Response -Objekt speichert.
Hinweis
[!HINWEIS] Für dieses Szenario muss Internetinformationsdienste (IIS) 5.0 oder höher installiert sein.
Das zurückgegebene Recordset -Objekt wird unter Verwendung eines RDS.DataControl-Objekts in Internet Explorer angezeigt.
Die folgenden Schritte sind für dieses Szenario erforderlich:
- 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 zwei neue Textdateien in dem Ordner, auf den das virtuelle Verzeichnis verweist, eine mit dem Namen XMLResponse.asp und die andere mit dem Namen Default.htm.
Schritt 2: Abrufen der Daten
In this step, you will write the code to open an ADO Recordset and prepare to send it to the client.
Open the file XMLResponse.asp with a text editor, such as Windows Notepad, and insert the following code:
<%@ language="VBScript" %> <!-- #include file='adovbs.inc' --> <% Dim strSQL, strCon Dim adoRec Dim adoCon Dim xmlDoc ' You will need to change "slqServer" below to the name of the SQL ' server machine to which you want to connect. strCon = "Provider=sqloledb;Data Source=sqlServer;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
Stellen Sie sicher, dass Sie den Wert des Parameters Datenquelle in strCon in den Namen Ihres Microsoft SQL Server-Computers ändern.
Lassen Sie die Datei geöffnet, und wechseln Sie zum nächsten Schritt.
Schritt 3: Senden der Daten
Now that you have a Recordset, you need to send it to the client by saving it as XML to the ASP Response object.
Add the following code to the bottom of 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 %>
Beachten Sie, dass das ASP Response-Objekt als Ziel für die RecordsetSave-Methode angegeben wird. Das Ziel der Save-Methode kann jedes beliebige Objekt sein, das die IStream-Schnittstelle unterstützt, z. B. ein ADO-Objekt Stream oder ein Dateiname, der den vollständigen Pfad einschließt, unter dem das Recordset-Objekt gespeichert wird.
Save and close XMLResponse.asp before going to the next step. Also copy the adovbs.inc file from C:\Program Files\Common Files\System\Ado folder to the same folder where you have the XMLResponse.asp file.
Schritt 4: Empfangen und Anzeigen der Daten
In diesem Schritt erstellen Sie eine HTML-Datei mit einem eingebetteten RDS. DataControl-Objekt , das auf die XMLResponse.asp-Datei zeigt, um das Recordset abzurufen.
Öffnen Sie default.htm mit einem Text-Editor, z. B. Windows-Editor, und fügen Sie den folgenden Code hinzu. Ersetzen Sie "sqlserver" in der URL durch den Namen Ihres Servercomputers.
<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 default.htm-Datei, und speichern Sie sie in demselben Ordner, in dem Sie 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 angezeigt.Öffnen Sie nun die URL
https://<sqlserver>/XMLPersist/XMLResponse.asp
, und beobachten Sie die Ergebnisse. Der XML-Code wird angezeigt.