APOSTILA SQL
O PL/SQL é uma linguagem procedural que roda diretamente no núcleo do SGBD Oracle.
O objetivo deste tutorial é mostrar a criação de funções e procedimentos em PL/SQL, interagindo com comandos SQL padrões.
Logado no OracleXE vamos acessar a opção:
Vamos construir uma função que calcula a média ponderada. Esta função terá como parâmetros quatro valores numéricos e irá retornar o calculado. Acompanhe a criação desta função: Passo-1: Nome da função e tipo de retorno:
Passo-2: Definição dos parâmetros de entrada da função:
Passo-3: Codificação do corpo da função (lógica de programação):
Passo-4: Vistoria do código gerado e finalização do processo:
Passo-5: O código final deverá ser:
Vamos analisar o código fonte:
CREATE OR REPLACE FUNCTION “MEDIA_POND”
Estamos criando ou substituindo uma função cujo nome é MEDIA_POND.
(nota1 in NUMBER, peso1 in NUMBER, ...)
É a declaração de parâmetros de entrada, no momento do uso da função deverão ser fornecidos quatro números.
return NUMBER
É o valor de retorno da função, ao final do seu processamento ela deve retornar a quem chamou um número.
is
Indica que a escrita da função irá começar.
mp NUMBER;
Estamos declarando uma variável de escopo local do tipo número para ser usada durante o processo de calculo.
mp:=(nota1*peso1 + nota2*peso2) / (peso1 + peso2);
Armazena temporariamente na variável numérica “mp” o valor calculado.
return mp;
Retorna para quem chamou o valor da média ponderada.
Podemos fazer ainda algumas colocações:
- O PL/SQL não é case-sensitive.
- Os tipos de dados e comandos SQL são compartilhados com o PL/SQL
- Os blocos ficam armazenados dentro do banco de dados.
Vamos agora testar a função:
Passo-1: Criar uma tabela para os testes:
Passo-2: Definir os atributos da tabela (Tab_MP):
•
Pode confirmar os outros passos sem alterações até a criação da tabela (Tab_MP).
Passo-3: Testar no SQL a função criada:
a) Chamar o