Compartilhar via


Comando .create-or-alter function

Cria uma função armazenada ou altera uma função existente e a armazena dentro dos metadados do banco de dados.

As regras para tipos de parâmetros e instruções CSL são as mesmas que para instruções let.

Permissões

Esse comando requer permissões de Usuário do Banco de Dados para criar uma nova função e permissões de Administrador de Função para alterar uma função existente.

Sintaxe

.create-or-alterfunction(with[ propertyName = propertyValue [, ...]] )corpo dos parâmetros{ ) functionName ( }

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
functionName string ✔️ O nome da função a ser criada ou alterada.
propertyName, propertyValue string Uma lista separada por vírgulas de pares de propriedades chave-valor. Consulte as propriedades suportadas.
parameters string Uma lista separada por vírgulas de parâmetros exigidos pela função. O formato para cada parâmetro deve ser ParameterName:ParameterDataType.
Corpo string ✔️ Zero ou mais let instruções seguidas por uma expressão CSL válida que é avaliada na chamada da função.

Observação

Se a função com o functionName fornecido não existir nos metadados do banco de dados, o comando criará uma nova função. Caso contrário, essa função será alterada.

Propriedades com suporte

Nome Tipo Descrição
docstring string Uma descrição da função para fins de interface do usuário.
folder string O nome de uma pasta usada para categorização de funções da interface do usuário.
view bool Designa essa função como uma exibição armazenada. As exibições armazenadas podem participar de cenários de pesquisa e união * . Para obter mais informações, consulte Modos de exibição.
skipvalidation bool Determina se a lógica de validação deve ser executada na função e falha no processo se a função não for válida. O padrão é false.

Exemplo

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

Saída

Nome Parâmetros Corpo Pasta DocString
Função de teste (meuLimite:int) { StormEvents | tomar myLimit } Minha Pasta Função de demonstração com parâmetro