このシナリオでは、Recordset オブジェクトの内容を ASP Response オブジェクトに直接保存する Active Server Pages (ASP) アプリケーションを作成します。
手記
このシナリオでは、サーバーにインターネット インフォメーション サーバー 5.0 (IIS) 以降がインストールされている必要があります。
返されたレコードセットは、DataControl オブジェクト (RDS)を使用して Internet Explorer に表示されます。
このシナリオを作成するには、次の手順が必要です。
アプリケーションを設定する
データを取得する
データを送信する
データの受信と表示
手順 1: アプリケーションを設定する
スクリプトのアクセス許可を持つ "XMLPersist" という名前の IIS 仮想ディレクトリを作成します。 仮想ディレクトリが指すフォルダーに 2 つの新しいテキスト ファイルを作成します。1 つは "XMLResponse.asp" という名前で、もう 1 つは "Default.htm." という名前です。
手順 2: データを取得する
この手順では、ADO レコードセットを開き、クライアントに送信する準備をするコードを記述します。 メモ帳などのテキスト エディターでファイル 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
Data Source
の strCon
パラメーターの値は、必ず 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 メソッドの変換先には、ADO Stream オブジェクト (ADO)など、IStream インターフェイスをサポートする任意のオブジェクト、または Recordset を保存する完全なパスを含むファイル名を指定できます。
次の手順に進む前に、XMLResponse.aspを保存して閉じます。 また、既定の ADO ライブラリ インストール フォルダーから、XMLResponse.asp ファイルを保存したのと同じフォルダーに adovbs.inc ファイルをコピーします。
手順 4: データを受信して表示する
この手順では、レコードセットを取得するために、XMLResponse.asp ファイルを指す埋め込み DataControl オブジェクト (RDS) オブジェクトを含む HTML ファイルを作成します。 メモ帳などのテキスト エディターで 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 以降を使用して、sqlserver/XMLPersist/default.htm https://URL を開き、結果を確認します。 データは、バインドされた DHTML テーブルに表示されます。 次に、sqlserver https:// /XMLPersist/XMLResponse.asp URL を開き、結果を確認します。 XML が表示されます。