Pessoal,
Desculpa vir a lista para fazer este pedido, mas tenho uma procedure em
Oracle e preciso converter ela para Postgresql.
Postgresql é uma linguagem que conheço pouco, estou usando o que já conheço
de banco de dados (outros), para este novo projeto (que tem um responsavel
para configura ele no servidor).
Se não for abusar demais, conto com a compreensão e ajuda, se estou fazendo
algo errado por favor desconsiderar a mensagem.
Esta é a procedure em oracle (esta procedure está dentro de uma package no
oracle, por isto ela não começa com create or replace):
--==========================
-- Insere / Atualiza dados do modulo
--==========================
--==========================
procedure SP_ATUALIZA_MODULO(n_id_modulo in MODULO.ID_MODULO%TYPE,
vc2_nom_modulo in MODULO.NOM_MODULO%TYPE,
vc2_desc_modulo in MODULO.DES_MODULO%TYPE,
n_erro out INTEGER,
vc2_msg_erro out varchar2)
is
n_tem_modulo INTEGER;
begin
n_erro := 0; -- Modulo cadastrado com sucesso
-- Novo modulo
if (n_id_modulo= 0) then
insert into MODULO (NOM_MODULO,
DES_MODULO)
values (vc2_nom_modulo,
vc2_desc_modulo);
-- Altera dados do modulo
else
select count(*)
into n_tem_modulo
from MODULO
where ID_MODULO != n_id_modulo;
if (n_tem_modulo = 0) then
update MODULO
set NOM_MODULO = vc2_nom_modulo,
DES_MODULO = vc2_desc_modulo
where ID_MODULO = n_id_modulo;
n_erro := 3; -- Modulo atualizado com sucesso
else
n_erro := 2; -- Modulo ja existe
end if;
end if;
commit;
exception
when others then
rollback;
NULL;
n_erro := sqlcode; -- Erro ao cadastrar o modulo
vc2_msg_erro := sqlerrm;
END SP_ATUALIZA_MODULO;
Desde já grato.
--
[]s
Nilson Chagas - Ubuntu User 25794
---
Visite:
http://www.amados.com.br/podcast
http://tempodesalvacao.blogspot.com/
http://bbnradio.org/
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral