[firebase-br] RES: Erro ao executar command para criar trigger ou SP
Ivan Guimarães Meirelles
igmeirelles em gmail.com
Qui Jul 23 10:52:12 -03 2009
Olá Cássio...
Já experimentou não usar o SET TERM ??
Tente assim:
CREATE TRIGGER TR_ALTERAR_LOC FOR LOCACOES
ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 0
AS
begin
IF (INSERTING) then
BEGIN
UPDATE IMOVEIS SET IMOVEIS.LOCADO=1
WHERE NEW.ID_IMOVEL=IMOVEIS.ID_IMOVEL;
END
End;
Não esqueça de colocar o ; no final da criação da trigger.
Espero ter ajudado.
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: quinta-feira, 23 de julho de 2009 09:43
Para: lista em firebase.com.br
Assunto: [firebase-br] Erro ao executar command para criar trigger ou SP
opa.
seguinte criei um atualizador de banco de dados para a minha aplicação.
então pego um script e executo via command no banco de dados. Funciona
certinho, exceto quando tenho uma criação de uma trigger ou store procedure.
O script que dá problema é esse por exemplo:
SET TERM ^ ;
CREATE TRIGGER TR_ALTERAR_LOC FOR LOCACOES
ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 0
AS
begin
IF (INSERTING) then
BEGIN
UPDATE IMOVEIS SET IMOVEIS.LOCADO=1
WHERE NEW.ID_IMOVEL=IMOVEIS.ID_IMOVEL;
END
end^
SET TERM ; ^
/*o comando termina aqui */
ai retorna este erro:
Msg de Erro: Dynamic SQL Error
SQL error code = -104
Token unknown - line 6, char 5
TERM
o que me parece é que o command não concegue interpretar o "SET TERM ;
^" que é a terminação da trigger no firebird.
pergunto, alguem tem alguma ideia para eu resolver isso?
no IBExpert funciona normalmente. algum detalhe que não estou
considerando. vlw.
______________________________________________
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