Cenário de persistência do conjunto de registros XML
Nesse cenário, você criará um aplicativo ASP (Active Server Pages) que salva o conteúdo de um objeto Recordset diretamente no objeto Response do ASP.
Observação
Esse cenário exige que o servidor tenha o IIS (Servidor de Informações da Internet) 5.0 ou posterior instalado.
O Recordset retornado é exibido no Internet Explorer usando um Objeto DataControl (RDS).
As seguintes etapas são necessárias para criar este cenário:
Configurar o aplicativo
Obter os dados
Enviar os dados
Receber e exibir os dados
Etapa 1: configurar o aplicativo
Crie um diretório virtual do IIS chamado "XMLPersist" com permissões de script. Crie dois novos arquivos de texto na pasta para a qual o diretório virtual aponta, um chamado "XMLResponse.asp", o outro chamado "Default.htm".
Etapa 2: obter os dados
Nesta etapa, você vai escrever o código para abrir um Recordset do ADO e se preparar para enviá-lo ao cliente. Abra o arquivo XMLResponse.asp com um editor de texto, como o Bloco de Notas, e insira o código a seguir.
<%@ 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
Certifique-se de alterar o valor do parâmetro Data Source
no strCon
para o nome do computador com Microsoft SQL Server.
Mantenha o arquivo aberto e vá para a próxima etapa.
Etapa 3: enviar os dados
Agora que você tem um Recordset, envie-o para o cliente salvando-o como XML no objeto Response do ASP. Adicione o código a seguir à parte inferior do 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
%>
Observe que o objeto Response do ASP é especificado como o destino de Save Method do Recordset. O destino de Save Method pode ser qualquer objeto que dê suporte à interface IStream, como um Objeto Stream (ADO) do ADO ou um nome de arquivo que inclui o caminho completo para o qual o Recordset deve ser salvo.
Salve e feche XMLResponse.asp antes de ir para a próxima etapa. Copie também o arquivo adovbs.inc da pasta de instalação da biblioteca do ADO padrão para a mesma pasta em que você salvou o arquivo XMLResponse.asp.
Etapa 4: receber e exibir os dados
Nesta etapa, você criará um arquivo HTML com um Objeto DataControl (RDS) inserido que aponta para o arquivo XMLResponse.asp para obter o Recordset. Abra default.htm com um editor de texto, como o Bloco de Notas, e adicione o código a seguir. Substitua "sqlserver" na URL pelo nome do servidor.
<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>
Feche o arquivo default.htm e salve-o na mesma pasta em que você salvou XMLResponse.asp. Usando o Internet Explorer 4.0 ou posterior, abra a URL https://sqlserver/XMLPersist/default.htm e observe os resultados. Os dados são exibidos em uma tabela DHTML limitada. Abra a URL https:// sqlserver /XMLPersist/XMLResponse.asp e observe os resultados. O XML é exibido.