Partilhar via


Executando consultas SQL (provedor SQLXMLOLEDB)

Aplica-se a:SQL ServerBanco de Dados SQL do Azure

Este exemplo ilustra a utilização das seguintes propriedades específicas do Provedor SQLXMLOLEDB:

  • ClienteSideXML

  • Raiz XML

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

A propriedade raiz xml fornece o único elemento raiz de topo para o documento XML gerado.

Observação

No código, deve fornecer o nome da instância do Microsoft SQL Server na cadeia de ligação. Além disso, este exemplo especifica a utilização do SQL Server Native Client (SQLNCLI11) para o fornecedor de dados, o que requer a instalação de software cliente de rede adicional. Para mais informações, consulte Requisitos de Sistema para Cliente Nativo do SQL Server.

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