SQLXMLOLEDB 提供程序是一个 OLE DB 提供程序,它通过 ActiveX 数据对象(ADO)公开Microsoft SQLXML 功能。 但是,提供程序只能在 ADO 的“写入输出流”模式下执行命令。 SQLXMLOLEDB 提供程序不是行集提供程序。 执行命令时,必须指定 adExecuteStream 标志,该标志指示 ADO 使用指定的输出流。
以下示例显示了指定 adExecuteStream 标志的 Execute 命令的语法:
Dim oTestCommand As New ADODB.Command
...
oTestCommand.Properties("Output Stream").Value = oTestStream
oTestCommand.Execute , , adExecuteStream
...
SQLXMLOLEDB 提供程序特定的属性
SQLXMLOLEDB 提供程序公开以下特定于提供程序的连接属性。
| 连接 财产 |
违约 (如果有) |
DESCRIPTION |
|---|---|---|
| 数据提供程序 | 提供 SQLXMLOLEDB 执行命令的 OLE DB 访问接口的 PROGID。 从 SQLXML 4.0 和 SQL Server 2005 开始,此提供程序包含在 SQL Server Native Client 中;因此,此属性值限制为“SQLNCLI11”。 有关详细信息,请参阅 SQL Server Native Client Programming。 |
SQLXMLOLEDB 提供程序公开以下特定于提供程序的命令属性。
| 指令 财产 |
违约 (如果有) |
DESCRIPTION |
|---|---|---|
| 基本路径 | "" | 指定基文件路径。 基本文件路径用于指定 XML 样式表语言(XSL)或映射架构文件的位置。 基文件路径还用于解析 XSL 的相对路径,或映射已在 XSL 或映射架构属性中指定的架构文件。 有关使用此属性的示例,请参阅执行 XPath 查询(SQLXMLOLEDB 提供程序)。 |
| ClientSideXML | 假 | 如果希望将行集转换为 XML 的过程发生在客户端而不是服务器上,请将此属性设置为 True。 如果要将性能负载移动到中间层,这非常有用。 有关使用此属性的示例,请参阅执行 SQL 查询(SQLXMLOLEDB 提供程序)或执行包含 SQL 查询的模板(SQLXMLOLEDB 提供程序)。 |
| 内容类型 | 返回输出内容类型。 这是只读属性。 此属性向浏览器提供有关内容类型的信息(如 TEXT/XML、TEXT/HTML、image/jpeg 等)。 此属性的值将成为作为 HTTP 标头的一部分发送到浏览器的 内容类型 字段,其中包含作为正文发送的文档的 MIME 类型(多用途 Internet 邮件扩展)。 |
|
| 映射架构 | Null | 如果客户端应用程序针对映射架构(XDR 或 XSD)执行 XPath 查询,则此属性用于指定映射架构的名称。 指定的路径可以是相对路径(xyz/abc/MySchema.xml)或绝对路径(C:\MyFolder\abc\MySchema.xml)。 如果指定了相对路径,则基路径属性指定的基路径用于解析相对路径。 如果在 Base Path 属性中未指定路径,则相对路径相对于当前目录。 在指定映射架构属性的值时,可以指定本地目录路径或 URL(http://...)。如果指定 URL,则必须将 WinHTTP 配置为通过代理服务器访问 HTTP 和 HTTPS 服务器。 可以通过执行 Proxycfg.exe 实用工具来执行此作。 有关详细信息,请参阅 MSDN 库中的“使用 WinHTTP 代理配置实用工具”。 有关使用此属性的示例,请参阅执行 XPath 查询(SQLXMLOLEDB 提供程序)。 |
| 命名空间 | 此属性允许执行使用命名空间的 XPath 查询。 有关使用此属性的示例,请参阅使用命名空间执行 XPath 查询(SQLXMLOLEDB 提供程序)。 | |
| ss 流标志 | 此属性用于指定特定类型的安全限制。 例如,你可能不希望允许对文件的 URL 引用或文件的绝对路径(如外部网站)。 或者你可能不希望允许模板中的查询。 可以为属性分配以下值: 1 = STREAM_FLAGS_DISALLOW_URL 2 = STREAM_FLAGS_DISALLOW_ABSOLUTE_PATH 4 = STREAM_FLAGS_DISALLOW_QUERY 8 = STREAM_FLAGS_ DONTCACHEMAPPINGSCHEMA 16 = STREAM_FLAGS_DONTCACHETEMPLATE 32 = STREAM_FLAGS_DONTCACHEXSL 下表中提供了有关这些值的其他信息。 |
|
| xml 根 | 此属性用于定义生成的 XML 的根标记。 例如,如果对数据库执行 SQL 查询,并且生成的 XML 文档没有单个根元素,则此属性的值用于向文档添加单个根元素。 有关使用此属性的示例,请参阅执行 SQL 查询(SQLXMLOLEDB 提供程序)。 |
|
| xsl | 如果要将 XSL 转换应用于查询返回的 XML 文档,此属性用于指定 XSL 文件名。 指定的路径可以是相对路径(xyz/abc/MyXSL.xsl)或绝对路径(C:\MyFolder\abc\MyXSL.xsl)。 如果指定了相对路径,则基路径属性指定的基路径用于解析相对路径。 如果在 Base Path 属性中未指定路径,则相对路径相对于当前目录。 有关使用此属性的示例,请参阅应用 XSL 转换(SQLXMLOLEDB 提供程序)。 |
下表包含 ss Stream Flags 属性值的说明。
| 属性值 | DESCRIPTION |
|---|---|
| STREAM_FLAGS_DISALLOW_URL | 映射架构或 XSL 不接受 URL。 |
| STREAM_FLAGS_DISALLOW_ABSOLTE_PATH | 为映射架构或 XSL 指定的路径必须相对于模板本身的基本路径。 |
| STREAM_FLAGS_DISALLOW_QUERY | 模板中不允许查询。 |
| STREAM_FLAGS_DONTCACHEMAPPINGSCHEMA | 映射架构未缓存。 当数据库架构受到更改时,此属性值在数据库开发阶段非常有用。 |
| STREAM_FLAGS_DONTCACHETEMPLATE | 不会缓存模板。 |
| STREAM_FLAGS_DONTCACHEXSL | 未缓存 XSL。 |