[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