Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

PROCEDURES melhor do que FUNÇÃO?

Vi que há possibilidade de usar procedures ao invés de funções, gostaria de saber se segundo as boas práticas, é possível utilizar somente elas para a automação de tarefas? Sei que as funções são boas para casos isolados, porém, através da procedures podemos fazer um pouco mais. Estou gostando muito do curso, a didática é muito boa.

2 respostas
solução!

Olá Cristian, tudo bem?

Em relação às diferenças entre Procedures e Functions, aqui estão algumas que acho principais:

  • Functions retornam valores ;
  • Procedures podem ou não retornar um valor.
  • Functions podem ser usadas em uma instrução SELECT;
  • Procedures não podem ser usadas em uma instrução SELEC.
  • Functions podem ter apenas parâmetros de entrada;
  • Procedures podem ter parâmetros de entrada / saída.
  • Functions podem ser chamadas de dentro de Procedures ;
  • Procedures não podem ser chamados a partir de functions.

Já em relação ao uso de procedures e functions no dia a dia, no meu ponto de vista a escolha deve depender do que será necessário executar e como será utilizado esse procedimento, por exemplo, se você não vai precisar retornar nenhum valor então você pode utilizar procedure, já que a function obrigatoriamente precisa retornar um valor, caso você precise utilizar em uma instrução SELECT o ideal é escolher a function, já que procedures não podem ser usadas.

As vantagens de usar procedures e function é que elas provem aumento de desempenho e segurança, também promovem reusabilidade e facilidade de manutenção, como por exemplo, esses procedimentos ficam armazenados no banco de dados, não é necessário sempre copiar um código quando precisar executar alguma operação, a instrução SQL já está pronta, o que precisa ser feito apenas é chamar o procedimento que executa o que você precisa. Isso pode ser muito utilizado, por exemplo, na geração de relatórios, já que muitas empresas precisam gerar relatórios diários, semanais, mensais...

Espero ter ajudado e bons estudos!

Muito obrigado, ajudou muito, realmente, usá-los agiliza o trabalho com banco de dados.