执行 SQL 查询(SQLXMLOLEDB 访问接口)
该示例说明以下特定于 SQLXMLOLEDB 访问接口的属性的用法:
ClientSideXML
xml root
在该客户端 ADO 示例应用程序中,在客户端执行了一个简单 SQL 查询。由于 ClientSideXML 属性设置为 True,因此会将不含 FOR XML 子句的 SELECT 语句发送到服务器。服务器执行该查询,并将行集返回到客户端。然后客户端对行集应用 FOR XML 转换,并产生 XML 文档。
xml root 属性为所生成的 XML 文档提供一个顶级根元素。
![]() |
---|
在该代码中,必须在连接字符串中提供 Microsoft SQL Server 实例的名称。此外,本示例还指定使用 SQL Server Native Client (SQLNCLI10) 作为数据访问接口,该访问接口需要安装其他网络客户端软件。有关详细信息,请参阅 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=SQLNCLI10;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