DISCOVER_CSDL_METADATA 行集

返回有关表格数据模型的信息,其中包括概念架构定义语言 (CSDL) 中模型的定义。 CSDL 是实体数据框架使用的 XML 架构,用于在 Analysis Services 服务器和 Power View 客户端之间进行通信。 有关表格数据模型的详细信息,请参阅用于表格模型的 CSDL 扩展插件简介

该命令的安全上下文影响返回的行集。 对于 Analysis Services 实例的读取权限是从服务器获取 CSDL 定义所必需的。

发出行集请求的客户端的语言标识符包括在命令的连接字符串中,并且影响作为行集的一部分返回的若干属性中显示的语言。 有关语言标识符可影响的属性和说明的信息,请参阅“备注”部分。

**适用于:**表格模型

行集列

DISCOVER_CSDL_METADATA 行集包含以下列。

列名

类型指示符

限制

说明

CATALOG_NAME

DBTYPE_WSTR

指定请求 CSDL 说明的数据库的名称。 如果省略,则使用当前数据库。

必须通过使用此列对 DISCOVER_CSDL_METADATA 行集进行限制。

PERSPECTIVE_NAME

DBTYPE_WSTR

指定已对 CATALOG_NAME 指定的模型定义的透视的名称。

可通过使用此列对 DISCOVER_CSDL_METADATA 行集进行限制。

包含多个多维数据集或透视的多维数据库上的 CSDL 查询需要此限制。 SQL Server 2012 SP1 中已引入此功能。

METADATA

DBTYPE_WSTR

根据 CSDL 架构包含数据源的 XML 定义及其属性的字符串。

备注

DISCOVER_CSDL_METADATA 具有以下要求:

  • 如果数据库未使用 CATALOG_NAME 限制指定,DISCOVER 请求将失败。

  • 如果透视作为限制提供,则对该模型将返回相同的 CSDL 行集。 但是,包含在模型中但未包含在指定的透视中的所有对象都标记为 Hidden = True。

  • 对于表和列,DISCOVER 请求始终从多维数据集维度输出值。 如果未设置多维数据集属性,则该请求将从维度返回值。

  • DISCOVER 请求不能返回包含语义错误的任何度量值或计算列。

  • DISCOVER 请求将不返回不具有属性值的对象的任何信息。 DISCOVER 请求还将不返回使用默认值的属性的值。

在行集中返回的 XML 字符串可能包含以下特定于语言的属性或值。 例如,如果您从其 LCID 为 0403(加泰罗尼亚西班牙语)的客户端发出该行集请求,则该属性将返回适用于加泰罗尼亚西班牙语的以下值。 如果翻译在该服务器上不可用,则返回该服务器的默认语言。

  • 标题

  • 限定符

  • SortDirection

  • IsRightToLeft

示例

以下 XMLA 查询返回当前连接上数据库 Model 的 CSDL 表示形式。

<Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
<RequestType>DISCOVER_CSDL_METADATA</RequestType>
    <Restrictions>
<RestrictionList>
<CATALOG_NAME>Model</CATALOG_NAME>
</RestrictionList>
</Restrictions>
    <Properties>
<PropertyList>
                 <FORMAT>Tabular</FORMAT>
   </PropertyList>
</Properties>
</Discover>

使用 ADOMD.NET 返回行集

在使用 ADOMD.NET 和架构行集检索元数据时,可以使用 GUID 或字符串在 GetSchemaDataSet 方法中引用架构行集对象。 有关详细信息,请参阅使用 ADOMD.NET 中的架构行集

下表提供了用于标识此行集的 GUID 和字符串值。

参数

GUID

87B86062-21C3-460F-B4F8-5BE98394F13B

ADOMDNAME

Csdl

请参阅

参考

Analysis Services 架构行集

概念

用于表格模型的 CSDL 扩展插件简介