Partager via


Commande .create-or-alter function

Crée une fonction stockée ou modifie une fonction existante et la stocke dans les métadonnées de la base de données.

Les règles pour les types de paramètres et les instructions CSL sont les mêmes que pour les instructions let.

autorisations

Cette commande nécessite des autorisations utilisateur de base de données pour créer une fonction et des autorisations d’administrateur de fonction pour modifier une fonction existante.

Syntaxe

.create-or-alterfunction [ with(propertyName = propertyValue [, ...])] corps des paramètres{ ) functionName ( }

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
Nom de fonction string ✔️ Nom de la fonction à créer ou modifier.
propertyName, propertyValue string Liste séparée par des virgules de paires de propriétés clé-valeur. Consultez les propriétés prises en charge.
parameters string Liste séparée par des virgules des paramètres requis par la fonction. Le format de chaque paramètre doit être ParameterName:ParameterDataType.
corps string ✔️ Zéro ou plusieurs let instructions suivies d’une expression CSL valide évaluée lors de l’appel de fonction.

Remarque

Si la fonction avec le functionName fourni n'existe pas dans les métadonnées de la base de données, la commande crée une nouvelle fonction. Sinon, cette fonction sera modifiée.

Propriétés prises en charge

Nom Type Description
docstring string Description de la fonction à des fins d’interface utilisateur.
folder string Nom d’un dossier utilisé pour la catégorisation des fonctions d’interface utilisateur.
view bool Désigne cette fonction en tant qu’affichage stocké. Les vues stockées peuvent participer à des scénarios de recherche et d’union * . Pour plus d’informations, consultez Vues.
skipvalidation bool Détermine s’il faut exécuter la logique de validation sur la fonction et échouer le processus si la fonction n’est pas valide. Par défaut, il s’agit de false.

Exemple

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

Sortie

Nom Paramètres Corps Dossier DocString
TestFunction (myLimit :int) { StormEvents | take myLimit } MyFolder Fonction de démonstration avec paramètre