Um guia completo sobre procedimentos e funções em PL SQL
Publicados: 2023-01-30
As linguagens de programação são um sistema para escrever programas de computador. Embora muitas linguagens de programação sejam baseadas em texto, outras também podem ser gráficas. Essas linguagens ajudam os programadores a se comunicarem com o computador. A linguagem de consulta estruturada (SQL) é uma dessas linguagens de programação que ajuda a armazenar, manipular e recuperar dados armazenados em um banco de dados relacional. No guia de hoje, compartilharemos detalhes sobre a execução dos blocos de nome (procedimentos e funções) que são subprogramas para PL SQL. Portanto, se você está procurando um guia completo sobre procedimentos e funções em PL SQL, você chegou à página certa. Neste documento, além de abordar o tópico de procedimento armazenado PL SQL, você também aprenderá sobre o exemplo de procedimento PL SQL. Sem mencionar o procedimento de chamada PL SQL, o procedimento de saída PL SQL e o exemplo de função PL SQL que são igualmente importantes para aprender se você for um programador iniciante. Então, vamos começar com nosso guia completo sobre PL SQL.
Conteúdo
- Um guia completo sobre procedimentos e funções em PL SQL
- O que é PL SQL?
- O que é procedimento e função em PL SQL?
- Como criar um procedimento armazenado e função em PL SQL?
- Vantagens do Stored Procedure e Function em PL SQL
- Sintaxe para criar procedimento armazenado
- Exemplo de procedimento PL SQL
- Sintaxe para criar função em PL SQL
- Exemplo de função PL SQL
- O que é procedimento de saída PL SQL?
- Diferença entre procedimento armazenado e de função
Um guia completo sobre procedimentos e funções em PL SQL
Aqui, mostramos procedimentos e funções PL SQL com exemplos em detalhes.
O que é PL SQL?
- PL SQL é uma forma abreviada de Extensões de Linguagem Processual para SQL .
- PL SQL é uma linguagem estruturada em blocos para programadores que os ajuda a combinar o poder do SQL com instruções procedurais.
- É a extensão processual da Oracle Corporation .
- Essa linguagem procedural está disponível no banco de dados Oracle , banco de dados em memória Times Ten e IBM Db2 .
- Em tempo de execução, PL/SQL e SQL oferecem eficiência ideal ao serem executados no mesmo processo de servidor .
- O PL SQL garante um processamento eficaz e sem interrupções de instruções SQL, aprimorando a portabilidade , a segurança e a robustez do banco de dados.
- PL SQL significa simplesmente instruir o compilador sobre o que fazer através do SQL e como fazê -lo através de sua forma procedural .
- PL SQL dá mais controle aos programadores com o uso de loops , condições e conceitos orientados a objetos .
O que é procedimento e função em PL SQL?
- O PL SQL possui dois subprogramas, conhecidos como procedimentos e funções .
- Normalmente, um procedimento é usado para executar uma ação e uma função para calcular um valor .
- Os subprogramas em PL SQL têm uma parte declarativa , uma parte executável e uma parte opcional de tratamento de exceções .
- Esses subprogramas podem ser criados e salvos no banco de dados como objetos de banco de dados.
- Subprogramas de procedimento e função em PL SQL retornam um único valor que é usado principalmente para computar e retornar um valor .
- Esses subprogramas são simplesmente uma coleção de instruções PL/SQL e SQL que podem executar uma tarefa específica .
Como criar um procedimento armazenado e função em PL SQL?
Quando um bloco de código para um procedimento ou função armazenado PL SQL é gravado, eles são compilados pelo mecanismo Oracle. Depois de compilado, ele é armazenado como um objeto de banco de dados. O procedimento armazenado ou bloco de função de código é composto de três partes:
- Parte declarativa : Nesta parte são declaradas as variáveis, constantes, cursores ou exceções que serão utilizadas pelo procedimento ou função.
- Parte Executável : Nesta parte, escreve-se a definição do procedimento ou função que se cria. Esta parte também consiste em instruções PL/SQL ou SQL atribuindo valores, manipulando dados e controlando a execução.
- Parte de Tratamento de Exceções : Esta última parte é opcional e nela são escritas as exceções esperadas que podem surgir durante a execução do código escrito na parte executável.
Vantagens do Stored Procedure e Function em PL SQL
Antes de descobrirmos o exemplo de procedimento PL SQL, você deve primeiro estar familiarizado com as vantagens dos subprogramas de procedimento e função.
- Melhore o desempenho do banco de dados: o mecanismo Oracle ajuda na compilação automática. Além disso, sempre que um procedimento ou função de chamada PL SQL é feito, o mecanismo Oracle carrega o código compilado no SGA, System Global Area, o que ajuda na execução mais rápida.
- Reutilização e sem redundância : O número de linhas de código não pode ser escrito repetidamente porque o mesmo bloco de código para um procedimento ou função pode ser chamado várias vezes em vários dados.
- Segurança : A segurança do banco de dados também é mantida com o uso de procedimentos ou funções armazenadas, pois ajuda a controlar o uso e seu acesso, concedendo permissão aos usuários. Embora, a permissão para editar ou manipular o banco de dados não seja concedida aos usuários.
- Integridade : Outra vantagem do uso de procedimento ou função armazenada PL SQL é que ela garante a integridade, pois são armazenados como objetos de banco de dados pelo mecanismo Oracle.
- Salvar memória: um dos muitos benefícios dos procedimentos ou funções armazenados é que eles compartilham memória, o que ajuda a economizar memória como uma única cópia de um procedimento ou função que pode ser carregada por vários usuários com permissão para fazer o mesmo.
Leia também: Como corrigir o erro javascript:void(0)
Sintaxe para criar procedimento armazenado
Você pode ver a sintaxe abaixo que é usada para criar um procedimento armazenado no Oracle:
CRIAR OU SUBSTITUIR PROCEDIMENTO <procedure_name> (<variable_name>IN/OUT/IN OUT <tipo de dados>, <variable_name>IN/OUT/IN OUT <datatype>,...) IS/AS declaração de variável/constante; COMEÇAR -- Corpo do subprograma PL/SQL; EXCEÇÃO -- Bloco de Tratamento de Exceções ; END <procedimento_nome>;

No código acima:
- Procedure_name representa o nome do procedimento.
- Variable_name representa o nome da variável usada no procedimento armazenado.
- O procedimento Create ou Replace representa uma palavra-chave usada para especificar o nome do procedimento a ser criado.
- Begin , Exception e End representam palavras-chave usadas para indicar que diferentes seções do procedimento são criadas.
- IN/OUT/IN OUT representa os modos de parâmetro em que IN se refere ao modo READ ONLY que é usado para uma variável através da qual aceitará o valor do usuário. Este é o modo de parâmetro padrão.
- OUT refere-se ao modo WRITE ONLY que é usado para uma variável que retorna o valor para o usuário.
- IN OUT refere-se ao modo READ e WRITE que é usado para uma variável que aceitará um valor ou retornará um valor para o usuário.
- <procedure_name> representa o fim da definição do procedimento. Você também pode simplesmente usar END em seu lugar.
Exemplo de procedimento PL SQL
Para o código do procedimento abaixo, aqui está um exemplo simples que demonstrará claramente o uso do procedimento armazenado para adicionar dois números:
definir serveroutput on; CREATE OR REPACE PROCEDURE Soma (onde a IN número, b IN número) É c número; COMEÇAR c := a+b; dbms_output.put_line ('Soma de dois nos= '|| c); END Soma;
No caso de chamar o procedimento, o seguinte código será executado:
definir serveroutput on; DECLARAR x número; y número; COMEÇAR x := &x; y := &y; soma(x,y); FIM; Onde: Digite o valor para x: 10 Digite o valor para y: 20 Soma de dois números: 30
Procedimento PL SQL criado com sucesso.
Sintaxe para criar função em PL SQL
Agora que você já sabe como criar sintaxe para stored procedures e seu exemplo, é hora de esclarecer um pouco sobre como criar funções em PL/SQL:
CRIAR OU SUBSTITUIR FUNÇÃO <nome_da_função> (<variable_name> IN <datatype>, <variable_name> IN <datatype>,...) RETORNAR <tipo de dado> IS/AS declaração de variável/constante; COMEÇAR -- Corpo do subprograma PL/SQL; EXCEÇÃO -- Bloco de Tratamento de Exceções ; END <nome_da_função>;
No código acima:
- Function_name representa o nome da função.
- Variable_name representa o nome da variável para a variável usada na função.
- A função Criar ou Substituir representa uma palavra-chave usada para o nome da função a ser criada.
- IN representa o modo READ ONLY que é usado para uma variável pela qual aceitará o valor do usuário. Este é o parâmetro padrão.
- Return representa uma palavra-chave que é seguida por um tipo de dados que especifica o tipo de dados de um valor que a função retornará.
Leia também: Falha no comando de correção com código de erro 1 Python Egg Info
Exemplo de função PL SQL
Segue abaixo um exemplo da função PL SQL que demonstra o uso da função para somar dois números:
definir serveroutput on; CREATE OR REPLACE FUNCTION Sum(a IN number, b IN number) RETURN Number IS c número; COMEÇAR c := a+b; RETORNO c; FIM;
No caso de chamar a função sum, o seguinte código será executado:
definir serveroutput on; DECLARAR número no1; número no2; número do resultado; COMEÇAR no1 := &no1; no2 := &no2; resultado := Soma(no1,no2); dbms_output.put_line('Soma de dois nos='||resultado); FIM; Onde: Digite o valor para no1: 5 Digite o valor para no2: 5 Soma de dois ns: 10
Procedimento PL SQL criado com sucesso.
Leia a próxima seção para saber sobre o procedimento de saída PL SQL.
O que é procedimento de saída PL SQL?
Exit ajuda quando a instrução sai da iteração atual do loop uma vez que a condição em sua cláusula WHEN é satisfeita e transfere o controle para o final do loop em andamento. As instruções Exit não podem ser usadas fora dos loops e destinam-se a sair de um loop incondicionalmente usando as instruções Exit e Continue ou condicionalmente usando as instruções Exit When e Continue When.
Diferença entre procedimento armazenado e de função
Agora que você conhece o procedimento e a função no PL SQL, finalmente é hora de saber também a diferença básica entre os dois:
- O procedimento armazenado pode ou não retornar um valor para a parte de chamada do programa, enquanto a função retorna um valor para a parte de chamada do programa.
- O procedimento armazenado retorna um valor usando o parâmetro OUT, enquanto a função retorna o valor usando RETURN.
- O procedimento armazenado usa o parâmetro IN, OUT, IN OUT, enquanto a função usa apenas o parâmetro IN.
- O procedimento armazenado não especifica o tipo de dados do valor se ele retornará após uma chamada feita a ele, enquanto a função especifica o tipo de dados do valor que retornará após uma chamada feita a ele.
- O procedimento armazenado não pode ser chamado a partir do bloco de código de função, enquanto a função pode ser chamada a partir do bloco de código de procedimento.
Recomendado:
- RAM DDR4 vs DDR5: qual é melhor para jogos?
- Quais são os tipos de tábua de pão?
- Como Analisar Texto
- 4 maneiras de dividir string por delimitador em SQL
Esperamos que nosso documento sobre procedimento e função em PL SQL tenha sido útil e bem-sucedido em responder a todas as suas dúvidas sobre PL SQL e seus subprogramas, procedimento e função, procedimento de saída do PL SQL e muito mais. Se o ajudamos de alguma forma ou se houver mais dúvidas de sua parte, deixe seus comentários abaixo para nos informar.