Поделиться через


Команда .create-or-alter function

Создает хранимую функцию или изменяет существующую функцию и сохраняет ее в метаданных базы данных.

Правила для типов параметров и инструкций CSL совпадают с правилами let.

Разрешения

Для этой команды требуются разрешения пользователя базы данных для создания новой функции и разрешений администратора функций для изменения существующей функции.

Синтаксис

.create-or-alterfunction [ with(propertyName = propertyValue [, ...])] Текст параметров {) functionName ( }

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
functionName string ✔️ Имя функции для создания или изменения.
propertyName, propertyValue string Разделенный запятыми список пар свойств "ключ-значение". См . поддерживаемые свойства.
parameters string Разделенный запятыми список параметров, необходимых функции. Формат каждого параметра должен иметь значение ParameterName:ParameterDataType.
текст string ✔️ Ноль или больше let инструкций, за которым следует допустимое выражение CSL, которое вычисляется при вызове функции.

Примечание.

Если функция с предоставленным именем функции не существует в метаданных базы данных, команда создает новую функцию. Кроме того, эта функция будет изменена.

Поддерживаемые свойства

Имя. Тип Описание
docstring string Описание функции для целей пользовательского интерфейса.
folder string Имя папки, используемой для классификации функций пользовательского интерфейса.
view bool Назначает эту функцию в качестве сохраненного представления. Сохраненные представления могут участвовать в сценариях поиска и объединения * . Дополнительные сведения см. в разделе "Представления".
skipvalidation bool Определяет, следует ли выполнять логику проверки в функции и завершать сбой процесса, если функция не является допустимой. Значение по умолчанию — false.

Пример

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

Выходные данные

Имя. Параметры Текст Папка DocString
TestFunction (myLimit:int) { StormEvents | take myLimit } MyFolder Демонстрация функции с параметром