[firebase-br] RES: Ajuda com Procedure
Ivan Guimarães Meirelles
igmeirelles em gmail.com
Sáb Jul 4 18:56:07 -03 2009
Olá Cássio...
Não seria interessante usar FOREIGN KEY para controlar isso ??
Um abraço...
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Cássio
Enviada em: sábado, 4 de julho de 2009 10:26
Para: lista em firebase.com.br
Assunto: [firebase-br] Ajuda com Procedure
Opa.
Quero fazer uma pr que exclua um registro de uma tabela caso não exista
este registro não esteja em outra. fiz assim, mas sem sucesso.
SET TERM ^ ;
RECREATE PROCEDURE PR_EXCLUIR_LOC (
ID_LOCACAO BIGINT)
AS
DECLARE VARIABLE EXISTE INTEGER;
BEGIN
--verifico se há locação em lançamentos e adicionado o resutado no
inteiro existe.
SELECT LOC.ID_LOCACAO FROM LOCACOES LOC
WHERE ID_LOCACAO IN (SELECT ID_ORIGEM
FROM LANCAMENTOS
WHERE ID_ORIGEM=LOC.ID_lOCACAO)
AND LOC.ID_LOCACAO =:ID_LOCACAO INTO :EXISTE;
IF (:EXISTE = 0) THEN --caso não exista então apaga a locação...
BEGIN
DELETE FROM LOCACOES WHERE LOCACOES.ID_LOCACAO =:ID_LOCACAO;
END
END^
SET TERM ; ^
chamo por fora assim:
execute procedure pr_excluir_loc(5);
retorna "The command(s) completed successfully."
mas o registro da locação continua la.
obrigado!
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista