Procedimentos vs funções na programação
Procedimentos e funções na programação, permitem aos programadores agrupar instruções em um único bloco e pode ser chamado de vários lugares dentro do programa. O código se torna mais fácil de entender e mais compacto. Ao realizar as modificações em um único lugar, todo o código será afetado. Com a ajuda de funções e procedimentos; um código linear e longo pode ser dividido em seções independentes. Eles fornecem mais flexibilidade para a codificação de várias linguagens de programação e bancos de dados.
O que são funções?
As funções são capazes de aceitar parâmetros que também são conhecidos como argumentos. Eles realizam as tarefas de acordo com esses argumentos ou parâmetros e retornam valores de determinados tipos. Podemos explicar melhor com a ajuda de um exemplo: Uma função aceita uma string como parâmetro e retorna a primeira entrada ou registro de um banco de dados. Ele leva em consideração o conteúdo de um campo específico que começa com esses caracteres.
A sintaxe da função é a seguinte:
CRIAR OU SUBSTITUIR FUNÇÃO my_func
(p_name IN VARCHAR2: = 'Jack') retorna varchar2 como início… fim
O que são procedimentos?
Os procedimentos podem aceitar os parâmetros ou argumentos e realizar tarefas de acordo com esses parâmetros. Se um procedimento aceita uma string como parâmetro e fornece uma lista com registros no banco de dados para os quais o conteúdo de um campo específico começa com tais caracteres.
A sintaxe dos procedimentos é a seguinte:
CRIAR OU SUBSTITUIR PROCEDIMENTO my_proc
(p_name IN VARCHAR2: = 'Jack') como início … fim
Principalmente, existem duas maneiras pelas quais um parâmetro é passado em funções e procedimentos; por valor ou por referência. Se o parâmetro é passado por um valor; a modificação é afetada dentro da função ou procedimento sem afetar seu valor real.
Por outro lado, se os parâmetros são passados por referências; o valor real deste parâmetro será alterado sempre que for chamado no código de acordo com as instruções.
• Quando o parâmetro é passado para o procedimento; não retorna nenhum valor, ao passo que uma função sempre retorna um valor. • Uma das principais diferenças em ambos é que os procedimentos não são usados em bancos de dados, enquanto as funções desempenham um papel importante no retorno de valores de um banco de dados. • Os procedimentos são capazes de retornar vários valores e as funções são capazes de retornar valores limitados. • As operações DML podem ser usadas em procedimentos armazenados; no entanto, eles não são possíveis em funções. • As funções podem retornar apenas um valor e é obrigatório, enquanto os procedimentos podem retornar n ou valores zero. • Em funções, o tratamento de erros não pode ser feito, embora possa ser executado em procedimentos armazenados. • Os parâmetros de entrada e saída podem ser passados em procedimentos, enquanto no caso de funções; apenas parâmetros de entrada podem ser passados. • As funções podem ser chamadas a partir de procedimentos, embora não seja possível chamar um procedimento a partir de uma função. • A gestão de transações pode ser considerada em procedimentos e não pode ser considerada no caso de funções. |