共用方式為


.create-or-alter function 命令

適用於: ✅Microsoft網狀架構Azure 數據總管

建立預存函式或改變現有的函式,並將它儲存在資料庫元數據內。

參數類型和 CSL 語句的規則與 let 語句的規則相同

權限

此命令需要 資料庫用戶 許可權,才能建立新的函式,以及 變更現有函式的函式管理員 許可權。

語法

.create-or-alterfunction [ with(propertyName = propertyValue [, ...])] functionName( 參數) { 主體 }

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
functionName string ✔️ 要建立或改變之函式的名稱。
propertyNamepropertyValue string 索引鍵/值屬性組的逗號分隔清單。 請參閱 支持的屬性
parameters string 函式所需的參數逗號分隔清單。 每個參數的格式必須是 ParameterName:ParameterDataType。
身體 string ✔️ 零個或多個 let 語句後面接著有效的 CSL 運算式,會在函式調用時進行評估。

注意

如果具有所提供 functionName 的函式不存在於資料庫元數據中,命令會建立新的函式。 否則,該函式將會變更。

支援的屬性

名稱 類型​​ 描述
docstring string UI 用途之函式的描述。
folder string 用於 UI 函式分類的資料夾名稱。
view bool 將此函式指定為預存檢視。 預存檢視可以參與 搜尋 和聯集 * 案例。 如需詳細資訊,請參閱 檢視
skipvalidation bool 判斷是否要在函式上執行驗證邏輯,並在函式無效時失敗進程。 預設值為 false

範例

下列範例會使用 description (docstring), 資料夾建立 TestFunction 函式,並定義 MyLimit 參數。

.create-or-alter function with (docstring = 'Demo function with parameter', folder='MyFolder')
TestFunction(myLimit:int)
{ StormEvents | take myLimit} 

輸出

名稱 參數 本文 Folder DocString
TestFunction (myLimit:int) { StormEvents | take myLimit } MyFolder 具有參數的示範函式