对象命名规则(分析服务)

本主题介绍对象命名约定,以及 Analysis Services 中的代码或脚本中不能在任何对象名称中使用的保留字和字符。

命名约定

每个对象都具有在父集合范围内必须唯一 Name 的和 ID 属性。 例如,只要每个维度位于不同的数据库中,两个维度可以具有相同的名称。

虽然可以手动指定它, ID 但在创建对象时通常会自动生成该对象。 一旦开始生成模型, ID 就不应该更改。 整个模型中的所有对象引用都基于 ID. 因此,更改模型 ID 很容易导致模型损坏。

DataSourceDataSourceView 对象对命名约定有显著例外。 DataSource ID 可以设置为单个点(.),该点不唯一,作为对当前数据库的引用。 第二个例外是 DataSourceView,它遵循为 DataSet .NET Framework 中对象定义的命名约定,其中用作 Name 标识符。

以下规则适用于 Name 属性 ID

  • 名称不区分大小写。 同一数据库中不能有一个名为“sales”和另一个名为“Sales”的多维数据集。

  • 对象名称中不允许有前导或尾随空格,尽管你可以在名称中嵌入空格。 将隐式剪裁前导空格和尾随空格。 这同时 Name 适用于对象和 ID 对象。

  • 最大字符数为 100。

  • 标识符的第一个字符没有特殊要求。 第一个字符可以是任何有效的字符。

保留字和字符

保留字采用英语,并应用于对象名称,而不是 Captions。 如果无意中在对象名称中使用保留字,将发生验证错误。 对于多维和数据挖掘模型,以下保留字不能在任何对象名称中使用。

对于表格模型,如果数据库兼容性设置为 1103,则某些对象的验证规则已放宽,不符合某些客户端应用程序的扩展字符要求和命名约定。 满足这些条件的数据库受到不太严格的验证规则的约束。 在这种情况下,对象名称可以包含受限字符,但仍通过验证。

保留字

  • 辅助

  • CLOCK$

  • COM1 到 COM9 (COM1、COM2、COM3 等)

  • CON

  • LPT1 到 LPT9(LPT1、LPT2、LPT3 等)

  • NUL

  • PRN

  • 不允许在 XML 中的任何字符串中将 NULL 用作字符

保留字符

下表列出了特定对象的无效字符。

物体 无效字符
Server 命名服务器对象时,请遵循 Windows 服务器命名约定。 有关详细信息 ,请参阅命名约定(Windows )。
DataSource : / \ * \| ? " () [] {} <>
LevelAttribute . , ; ' ` : / \ * & \| ? " & % $ ! + = [] {} < >
DimensionHierarchy . , ; ' ` : / \ * \| ? " & % $ ! + = () [] {} <,>
所有其他对象 . , ; ' ` : / \ * \| ? " & % $ ! + = () [] {} < >

异常:允许保留字符时

如前所述,特定形式和兼容性级别的数据库可以具有包含保留字符的对象名称。 允许使用扩展字符的表格数据库(1103 或更高版本)的维度属性、层次结构、级别、度量值和 KPI 对象名称可以包括保留字符:

服务器模式和数据库兼容性级别 允许保留字符?
MOLAP (所有版本)
表格 - 1050
表格 - 1100
表格 - 1130 及更高 是的

数据库可以具有默认的 ModelType。 默认值等效于多维,因此不支持在列名中使用保留字符。

另请参阅

MDX 保留字
翻译(Analysis Services)
XML for Analysis Compliance (XMLA)