Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como criar procedimentos armazenados PL/SQL com parâmetros no banco de dados Oracle




No tutorial anterior, discutimos como criar procedimento armazenado sem parâmetros. Mas às vezes pode acontecer que você precise criar um procedimento armazenado que aceite parâmetros. Afinal, essas sub-rotinas existem para ajudá-lo a obter a solução do seu problema da maneira mais fácil possível. Assim hoje neste blog vamos aprender como criar stored procedures com parâmetros no Oracle Database

Para aqueles que são novos na programação PL/SQL e estão se perguntando o que é procedimento armazenado? Não se preocupe, eu fiz um blog separado para você explicando a teoria fundamental do procedimento armazenado. Você pode conferir esse blog aqui.

Então vamos ver a demonstração de como criar um procedimento armazenado PL/SQL com parâmetros!

Etapa 1:crie o cabeçalho do procedimento armazenado


No cabeçalho do procedimento definimos sua assinatura.
CREATE OR REPLACE PROCEDURE emp_sal
(dep_id NUMBER, sal_raise NUMBER) 
IS

O cabeçalho é bastante semelhante ao que vimos no último tutorial, exceto que desta vez nosso procedimento está aceitando parâmetros que são dep_id e sal_raise do tipo de dados NUMBER.

Etapa 2:crie a seção de execução do procedimento armazenado


Na seção de execução, escrevemos todas as instruções executáveis ​​que definem o funcionamento do procedimento armazenado.
BEGIN
  UPDATE employees SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Para uma melhor compreensão, tentei tornar este código o mais simples possível. Na seção de execução, temos apenas uma instrução DML que é UPDATE. Usando isso, atualizamos a coluna de salário da tabela de funcionários.

Você pode escrever a lógica de negócios como esta, em seguida, envolvê-los em um procedimento e chamá-los em seu aplicativo quando necessário. Isso lhe dará mais controle sobre seu aplicativo. Também evitará que você escreva o mesmo código várias vezes.

Este procedimento aceitará dois parâmetros que é o id do departamento e o valor numérico para aumento de salário. O primeiro parâmetro que é o dep_id, é usado para determinar o ID do departamento. O segundo parâmetro que é sal_raise se tornará o fator de multiplicação do aumento salarial.

Para uma compreensão mais profunda do mesmo, assista ao tutorial em vídeo no meu canal do YouTube. Lá, expliquei detalhadamente cada linha e palavra-chave do procedimento armazenado acima.

Vamos combinar todos os pedaços de código acima em um único chamado unidade PL/SQL.

Procedimento armazenado para aumento de salário em todo o departamento

CREATE OR REPLACE PROCEDURE emp_sal( dep_id NUMBER, sal_raise NUMBER) 
IS
BEGIN
  UPDATE emp SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Depois de ter criado com sucesso seu procedimento armazenado, em seguida, você deve chamá-lo em seu programa ou código. No último tutorial mostrei diferentes formas de chamar um procedimento no banco de dados oracle. Você pode consultar esse tutorial para o mesmo.

Esse é o tutorial de como criar stored procedures PL/SQL com parâmetros no Oracle Database. Por favor, compartilhe-o em suas mídias sociais e ajude outras pessoas a aprender.

Por hoje é isso. Tenha um ótimo dia!