分享方式:


識別碼 (MDX)

識別碼是 Analysis Services 物件的名稱。 每個物件都可以且必須有識別碼。 這包括 Cube、維度、階層、層級、成員等等。 您可以使用 物件的識別碼來參考多維度運算式 (MDX) 語句中的物件。

根據您為物件命名的方式,物件識別碼的識別碼會是一般或分隔的識別碼。

注意

一般和分隔識別碼必須包含 1 到 100 個字元。

使用一般識別碼

一般識別碼是符合下列一般識別碼格式規則的物件名稱。 一般識別碼可以搭配或不使用分隔符號使用。

一般識別碼的格式規則

  1. 第一個字元必須是以下任一項:

    • Unicode Standard 2.0 所定義的字母。 除了其他語言的字母字元之外,字母的 Unicode 定義還包括從 a 到 z 和 A 到 Z 的拉丁字元。

    • 底線 (_)。

  2. 後續字元可以是:

    • Unicode Standard 2.0 中所定義的字母。

    • 其他基本拉丁文或其他國家 (地區) 字集中的十進位數字。

    • 底線 (_)。

  3. 識別碼不得為 MDX 保留關鍵字。 MDX 中的保留關鍵字不區分大小寫。 如需詳細資訊,請參閱 保留關鍵字(MDX 語法)。

  4. 不允許內嵌的空格或特殊字元。

一般識別碼的範例

在下列 MDX 語句中,識別碼、 MeasuresProductStyle 都符合一般識別碼的格式規則。 這些一般識別碼不需要分隔符號。

SELECT Measures.MEMBERS ON COLUMNS,

Product.Style.CHILDREN ON ROWS

FROM [Adventure Works]

``

雖然並非必要,但您也可以使用具有一般識別碼的分隔符號。 在下列 MDX 語句中, MeasuresProductStyle 一般識別碼已使用方括弧正確分隔。

SELECT [Measures].MEMBERS ON COLUMNS,

[Product].[Style].CHILDREN ON ROWS

FROM [Adventure Works]

``

使用分隔識別碼

不符合一般識別碼格式規則的識別碼,必須一律使用方括弧 ([]) 來分隔。

注意

分隔符號僅適用于識別碼。 不論關鍵字是否在 Analysis Services 中標示為保留,分隔符號都不能用於關鍵字。

在下列情況下,您會使用分隔的識別碼:

  • 當物件或部分名稱的名稱使用保留字時。

    我們建議您不要使用保留關鍵字做為物件名稱。 從舊版 Analysis Services 升級的資料庫可能包含識別碼,這些識別碼包含未在舊版中保留的字組,但現在已保留。 在您可以變更物件的識別碼之前,您可以使用分隔的識別碼來參考物件。

  • 當物件的名稱使用未列為限定識別碼的字元時。

    Analysis Services 允許分隔識別碼使用目前字碼頁中的任何字元。 不過,在物件名稱中不分青紅皂白地使用特殊字元,可能會使 MDX 語句和腳本難以讀取和維護。

分隔識別碼的格式規則

分隔識別碼的主體可以包含目前字碼頁中的任何字元組合,包括分隔字元本身。 如果分隔識別碼的主體包含分隔字元,則需要特殊處理:

  • 如果識別碼的主體只包含左括弧 ([),則不需要額外的處理。

  • 如果識別碼的主體包含右括弧 (]),您必須指定兩個右括弧 (]] 。

分隔識別碼的範例

在下列假設的 MDX 語句中, Sales VolumeSales Cubeselect 是分隔識別碼:

-- The [Sales Volume] and [Sales Cube] identifiers contain a space.

SELECT Measures.[Sales Volume]

FROM [Sales Cube]

WHERE Product.[select]

-- The [select] identifier is a reserved keyword.

在下一個範例中,物件的名稱是 Total Profit [Domestic] 。 若要參考此物件,您必須使用下列分隔識別碼:

[Total Profit [Domestic]]]

請注意,之前的 Domestic 左括弧不需要變更,即可建立分隔的識別碼。 不過,下列 Domestic 的右括弧必須取代為兩個右括弧。

使用多個元件分隔識別碼

當您使用限定的物件名稱時,您可能必須分隔組成物件名稱的多個識別符。 例如,下列程式碼中的 Front Brakes 識別碼需要分隔符號。

SELECT [量值]。資料行上的成員,

[Product]。[Product]。[前刹車]ON ROWS

FROM [Adventure Works]

此外,上一個範例中的量值識別碼已分隔,以示範分隔多個識別符。

另請參閱

MDX 語言參考 (MDX)
MDX 查詢基本概念 (Analysis Services)
MDX 語法元素 (MDX)