XML 記錄集持續性案例
在此案例中,您將建立 Active Server Pages (ASP) 應用程式,將 Recordset 物件的內容直接儲存至 ASP Response 物件。
注意
此案例需要您的伺服器已安裝 Internet Information Server 5.0 (IIS) 或更新版本。
傳回的 Recordset 會顯示在 Internet Explorer 中使用 DataControl 物件 (RDS)。
若要建立此案例,必須執行下列步驟:
設定應用程式
取得數據
傳送數據
接收和顯示數據
步驟 1:設定應用程式
使用文本許可權建立名為 「XMLPersist」 的 IIS 虛擬目錄。 在虛擬目錄指向的資料夾中建立兩個新的文本檔,其中一個名為 “XMLResponse.asp”,另一個名為 “Default.htm”。
步驟 2:取得數據
在此步驟中,您將撰寫程式代碼以開啟 ADO Recordset,並準備將它傳送至用戶端。 使用記事本等文本編輯器開啟檔案XMLResponse.asp,然後插入下列程序代碼。
<%@ 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
請務必將 strCon
中 Data Source
參數的值變更為Microsoft SQL Server 計算機的名稱。
讓檔案保持開啟,然後繼續下一個步驟。
步驟 3:傳送數據
現在您已有 Recordset,您必須將它儲存為 XML 至 ASP Response 物件,將其傳送至用戶端。 將下列程式代碼新增至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
%>
請注意,ASP Response 物件會指定為 Recordset Save 方法的目的地。 Save 方法的目的地可以是任何支援 IStream 介面的物件,例如 ADO Stream 物件 (ADO),或是包含要儲存 Recordset 之完整路徑的檔名。
儲存並關閉XMLResponse.asp,再移至下一個步驟。 此外,將 adovbs.inc 檔案從預設 ADO 連結庫安裝資料夾複製到儲存XMLResponse.asp檔案的相同資料夾。
步驟 4:接收和顯示數據
在此步驟中,您將使用內嵌 DataControl 物件 (RDS) 物件建立 HTML 檔案,指向XMLResponse.asp檔案以取得 Recordset。 使用文字編輯器開啟 default.htm,例如記事本,然後新增下列程序代碼。 將 URL 中的 「sqlserver」 取代為您的伺服器名稱。
<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>
關閉 default.htm 檔案,並將它儲存至您儲存XMLResponse.asp所在的相同資料夾。 使用 Internet Explorer 4.0 或更新版本,https://sqlserver/XMLPersist/default.htm 開啟 URL 並觀察結果。 數據會顯示在系結的 DHTML 資料表中。 現在開啟 sqlserver https:// URL /XMLPersist/XMLResponse.asp並觀察結果。 XML 隨即顯示。