[firebase-br] Erro ao criar Trigger

Tiago tijgrillo em gmail.com
Seg Fev 1 21:55:22 -03 2010


Uso aqui o 1.5, vou começar esta semana a migrar nosso sistema para  o mais
atual, mas... Este create table não esta errado? sózinho ele funciona??

abs,
Tiago


2010/2/1 Willian Jhonnes L. dos Santos <willianjhonnes em gmail.com>

> Boa tarde a todos.
>
> Estou enfrentando um pequeno problema para cria uma trigger bem simples
> para contornar a falta de integridade na exclusao de chaves estrangeiras. O
> firebird me retorna este erro [1] ao tentar criar a trigger, mas o campo
> OLD.UFE_SIGLA existe na tabela.
>
> Em [2] segue o script de criaçao da tabela.
>
> Alguem tem alguma ideia de onde esta o problema? Uso Firebird 2.5.0.25784.
>
> []'s
>
> [1]------------------------------------------------
> Dynamic SQL Error.
> SQL error code = -206.
> Column unknown.
> OLD.UFE_SIGLA.
> At line 6, column 11.
> [/1]-----------------------------------------------
>
> [2]------------------------------------------------
> CREATE TABLE UF (
>  UFE_SIGLA D_UF NOT NULL,
>  UFE_NOME "D_VARCHAR(32)" NOT NULL);
>
>
> ALTER TABLE UF ADD CONSTRAINT PK_UF PRIMARY KEY (UFE_SIGLA);
>
> CREATE TRIGGER UF_BI0 FOR UF
> ACTIVE BEFORE INSERT
> POSITION 0
> AS
> BEGIN
>  NEW.UFE_SIGLA = UPPER(NEW.UFE_SIGLA);
>  NEW.UFE_NOME = UPPER(NEW.UFE_NOME);
> END;
>
> CREATE TRIGGER UF_BD0 FOR UF
> ACTIVE BEFORE DELETE
> POSITION 0
> AS
> BEGIN
>  IF (OLD.UFE_SIGLA IN (SELECT DISTINCT MUN_UF
>                          FROM MUNICIPIO)) THEN
>    EXCEPTION EXC_DEL_UF;
> END;
> [/2]-----------------------------------------------
>
> --
> ---------------------------------------------------
> Att.:
> Willian Jhonnes L. dos Santos
> Analista/Desenvolvedor Object/Free Pascal
> willianjhonnes em gmail.com
> ---------------------------------------------------
> Seja livre. Use Linux.
> Grupo de Usuários GNU/Linux de São José dos Pinhais
> Linux user number 449753
> ---------------------------------------------------
> Powered by Slackware Linux 13.0
> Kernel 2.6.32.6-i686-core2quad
> ---------------------------------------------------
>
> ______________________________________________
> 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