Oracle Procedure: Como criar uma procedure no Oracle

Veja nesse artigo um pequeno exemplo de com criar procedure para inclusão, atualização e deleção no banco de dados Oracle.

Olá, neste post veremos um exemplo de como criar um stored procedure no Oracle para inserção, deleção e atualização. É um procedure simples, mas para conceitos didáticos pode ser muito interessante. Vamos criar uma tabela Cidades para exemplificar:

Listagem 1: Criação da tabela de exemplo

CREATE TABLE CIDADES ( COD_CIDADE INTEGER NOT NULL, NOME VARCHAR2(100 BYTE), UF CHAR(2 BYTE) )

Em seguida criaremos o procedure, que receberá além dos dados da cidade, um parâmetro indicando qual operação desejamos executar (Inserção, Alteração ou Deleção).

Listagem 2: Procedure para inserir, alterar e excluir dados da tabela

CREATE OR REPLACE PROCEDURE "SP_CIDADES" ( vCOD_CIDADE INTEGER, vNOME VARCHAR2, vUF CHAR, vOPR CHAR) IS vEXCEPTION EXCEPTION; BEGIN IF (vOPR = 'I') THEN INSERT INTO CIDADES(COD_CIDADE, NOME, UF) VALUES (vCOD_CIDADE, vNOME, vUF); ELSE IF(vOPR = 'A') THEN UPDATE CIDADES SET NOME = vNOME, UF = vUF WHERE COD_CIDADE = vCOD_CIDADE; ELSE IF(vOPR = 'D')THEN DELETE FROM CIDADES WHERE COD_CIDADE = vCOD_CIDADE; ELSE RAISE vEXCEPTION; END IF; END IF; END IF; EXCEPTION WHEN vEXCEPTION THEN RAISE_APPLICATION_ERROR(-20999,'ATENÇÃO! Operação diferente de I, D, A.', FALSE); END SP_CIDADES;

Para executar o procedure no editor do Oracle, utilize o seguinte código.

EXEC SP_CIDADES(1, ‘COLATINA’, ‘ES’, ‘I’)

Como já foi dito, o procedure recebe, além dos dados referentes a cada coluna da tabela, um parâmetro que indica qual ação deve ser executada. Caso nenhum dos valores válidos (I,A ou D) seja informado, é gerada uma exceção.

Obrigado a todos!

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados