次の方法で共有


XML レコードセットの保持シナリオ

このシナリオでは、Recordset オブジェクトの内容を ASP Response オブジェクトに直接保存する Active Server Pages (ASP) アプリケーションを作成します。

注意

このシナリオでは、サーバーにインターネット インフォメーション サーバー (IIS) 5.0 以降がインストールされている必要があります。

返された Recordset は、DataControl オブジェクト (RDS) を使用して Internet Explorer に表示されます。

このシナリオを作成するには、次のステップが必要です。

  • アプリケーションを設定する

  • データを取得する

  • データを送信する

  • データを受信して表示する

ステップ 1: アプリケーションを設定する

スクリプトのアクセス許可を持つ "XMLPersist" という名前の IIS 仮想ディレクトリを作成します。 仮想ディレクトリが指すフォルダーに 2 つの新しいテキスト ファイルを作成します。1 つは "XMLResponse.asp" という名前で、もう 1 つは "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 メソッドの宛先には、ADO Stream オブジェクト (ADO) など、IStream インターフェイスをサポートする任意のオブジェクトや、Recordset を保存する完全なパスを含むファイル名を指定できます。

次のステップに進む前に、XMLResponse.asp を保存して閉じます。 また、adovbs.inc ファイルを既定の ADO ライブラリ インストール フォルダーから、XMLResponse.asp ファイルを保存したのと同じフォルダーにコピーします。

ステップ 4: データを受信して表示する

このステップでは、Recordset を取得するために 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 以降を使用して、URL https://sqlserver/XMLPersist/default.htm を開き、結果を確認します。 データは、バインドされた DHTML テーブルで表示されます。 次に、URL https:// sqlserver /XMLPersist/XMLResponse.asp を開き、結果を確認します。 XML が表示されます。

参照

Save メソッド
レコードを XML 形式で保持する