實體名稱

適用於:✅Microsoft網狀架構Azure 數據✅總管 Azure 監視器✅Microsoft Sentinel

Kusto 實體會依名稱在查詢中參考。 可由其名稱參考的實體包括資料庫、資料表、資料行和預存函式,但不包括叢集 您指派實體的名稱稱為識別碼。 除了實體之外,您也可以將標識符指派給查詢參數,或透過 let 語句設定的變數。

Kusto 實體會依名稱在查詢中參考。 可由其名稱參考的實體包括資料庫、資料表、資料行和預存函式 您指派實體的名稱稱為識別碼。 除了實體之外,您也可以將標識符指派給查詢參數,或透過 let 語句設定的變數。

實體的名稱是其容器內容中實體類型的唯一名稱。 例如,相同資料庫中的兩個數據表不能有相同的名稱,但是資料庫和數據表可以有相同的名稱,因為它們是不同的實體類型。 同樣地,數據表和預存函式的名稱可能相同。

注意

實體名稱也會反映為 Azure 資源,請遵循 ARM 保留字組規則

漂亮的名稱

除了實體的名稱之外,某些實體可能具有 相當的名稱。 類似於使用實體名稱,漂亮的名稱可用來參考查詢中的實體。 但與實體名稱不同,漂亮的名稱在容器的內容中不一定是唯一的。 當容器有多個具有相同漂亮名稱的實體時,無法使用漂亮的名稱來參考實體。

漂亮的名稱可讓仲介層應用程式將自動建立的實體名稱(例如 UUID)對應至人類可讀取的名稱,以供顯示和參考之用。

如需如何指派漂亮名稱的範例,請參閱 .alter database prettyname 命令

標識元命名規則

標識碼是您透過 let 語句設定實體查詢參數或變數的名稱。 有效的識別碼必須遵守下列規則:

  • 標識碼會區分大小寫。 資料庫名稱不區分大小寫,因此此規則的例外狀況。
  • 標識符長度必須介於 1 到 1024 個字元之間。
  • 標識碼可能包含字母、數位和底線 (_)。
  • 標識碼可能包含特定特殊字元:空格、點 (.) 和破折號 (-)。 如需如何使用特殊字元參考標識子的資訊,請參閱 查詢中的參考標識碼。

注意

  • 只支援指定的 UTF-8 字元字母、數位、底線、點和虛線。 例如,不支援分號和冒號。
  • $ KQL 運算子產生時,實體名稱中允許此字元。

避免將標識碼命名為語言關鍵詞或常值

在 KQL 中,有關鍵詞和常值具有與標識符類似的命名規則。 您可以擁有與關鍵詞或常值相同名稱的識別碼。 不過,我們建議您避免這樣做,因為在查詢中參考它們需要 特殊引號

若要避免使用可能也是語言關鍵詞或常值的標識碼,例如 wheresummarize1day,您可以根據下列慣例來選擇實體名稱,這些慣例不適用於語言關鍵詞:

  • 使用開頭為大寫字母的名稱(AZ)。

  • 使用以單一底線開頭或結尾的名稱 (_)。

    注意

    KQL 會保留以兩個底線字元序列開頭或結尾的所有標識碼(__; 使用者無法定義這類名稱供自己使用。

如需如何參考這些標識子的資訊,請參閱 查詢中的參考標識碼。

查詢中的參考標識碼

下表提供如何在查詢中參考標識碼的說明。

標識元類型 識別碼 參考 說明
Normal entity entity entity不包含特殊字元或對應至某些語言關鍵詞的識別碼 () 不需要以引號括住。
特殊字元 entity-name ['entity-name'] 包含特殊字元 (例如) -的識別碼名稱必須使用 和 '] 或使用 [""]括住['
language 關鍵詞 where ["where"] 語言關鍵詞的標識碼名稱必須使用 和 '][""]括住['
literal 1day ["1day"] 必須是常值的標識碼名稱,必須使用 和 '][""]括住['

注意

標識碼會區分大小寫。 例如,您無法將稱為 ThisTable thisTABLE的資料表稱為 。