Partilhar via


Executando consultas SQL (provedor SQLXMLOLEDB)

Este exemplo ilustra o uso das seguintes propriedades específicas de provedor SQLXMLOLEDB:

  • Clientsidexml

  • xml root

Neste aplicativo de exemplo ADO do lado do cliente, uma consulta SQL simples é executada no cliente. Como a propriedade ClientSideXML está definida como True, a instrução SELECT sem a cláusula FOR XML é enviada ao servidor. O servidor executa a consulta e retorna um conjunto de linhas para o cliente. O cliente aplica a transformação de FOR XML ao conjunto de linhas e produz um documento XML.

A propriedade raiz xml fornece o único elemento raiz de nível superior para o documento XML gerado.

Observação

No código, você deve fornecer o nome da instância do Microsoft SQL Server na cadeia de conexão. Além disso, este exemplo especifica o uso do SQL Server Native Client (SQLNCLI11) para o provedor de dados, que exige a instalação de software cliente de rede adicional. Para obter mais informações, consulte Requisitos do sistema para SQL Server Native Client.

Option Explicit  
Sub main()  
Dim oTestStream As New ADODB.Stream  
Dim oTestConnection As New ADODB.Connection  
Dim oTestCommand As New ADODB.Command  
  
oTestConnection.Open "provider=SQLXMLOLEDB.4.0;data provider=SQLNCLI11;data source=SqlServerName;initial catalog=AdventureWorks;Integrated Security=SSPI ;"  
oTestCommand.ActiveConnection = oTestConnection  
oTestCommand.Properties("ClientSideXML") = True  
oTestCommand.CommandText = "SELECT TOP 10 FirstName, LastName FROM Person.Contact FOR XML AUTO"  
oTestStream.Open  
oTestCommand.Properties("Output Stream").Value = oTestStream  
oTestCommand.Properties("xml root") = "root"  
oTestCommand.Execute , , adExecuteStream  
  
oTestStream.Position = 0  
oTestStream.Charset = "utf-8"  
Debug.Print oTestStream.ReadText(adReadAll)  
End Sub  
Sub Form_Load()  
 main  
End Sub