FUNCOESdefinidaspelosusuario

524 palavras 3 páginas
FUNÇÕES

USER – DEFINED FUNCTIONS (UDFS): Funções Definidas pelo Usuário:


São rotinas que aceitam parâmetros, executam uma ação, como um cálculo complexo, e retornam o resultado dessa ação como um valor.

O valor de retorno pode ser um único valor escalar ou um conjunto de resultados. •

São funções que o usuário cria para realizar diversas tarefas no banco de dados, como por exemplo:

Inserir lógica em uma consulta;
Criar novas funções para expressões complexas;
Substituir exibições , com a vantagem de aceitar parâmetro.

FUNÇÕES

Funções Definidas pelo Usuário Benefícios


Permitem programação modular:

Você pode criar a função uma vez, armazená-la no banco de dados e chamá-la quantas vezes quiser em seu programa.
Podem ser modificadas independentemente do código-fonte do programa. Elas permitem execução mais rápida:

Reduzem o custo de compilação do código Transact-SQL colocando os planos em cache e reutilizando-os para execuções repetidas. Isso significa que a função definida pelo usuário não precisa ser reanalisada e reotimizada em cada utilização resultando em tempos de execução mais rápidos. •

Podem reduzir o tráfego de rede.

Tipos:

FUNÇÕES

Escalar;- Retorna um único valor específico
Valor de Tabela; (Table Value)- retorna vários valores
De Sistema.

Tipos:

FUNÇÕES

Função Escalar:
Retornam um valor único de dados do tipo definido na cláusula RETURNS.
Para uma função escalar embutida, não há um corpo de função; o valor escalar é o resultado de uma única instrução.
Para uma função escalar de várias instruções, o corpo da função, definido em um bloco BEGIN...END, contém uma série de instruções
Transact-SQL, que retornam o valor único.

O tipo de retorno pode ser qualquer tipo de dados, exceto text, ntext, image, cursore timestamp.

Tipos:

FUNÇÕES

Função com valor de tabela:
Retornam um tipo de dados table.
Para uma função com valor de tabela embutida, não há um corpo de função; a tabela é o conjunto de resultados de uma única instrução
SELECT.

Relacionados