[firebase-br] RES: RES: Erro em trigger

Carlos H. Cantu listas em warmboot.com.br
Sexta Janeiro 29 14:46:37 -03 2021


Faça backup/restore e veja se restaura sem erros.

O gfix não consegue detectar erros lógicos, por exemplo, um campo "not null" estar null.

E verifique também se na base o trigger está ativo.

[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

r> Bom dia Cantu, obrigado pela resposta

r> A principio, fiz o teste com gfx

r> gfix -validate -full C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -mend -full -ignore C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -validate -full C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -mend -full -ignore C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -validate -full C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -mend -full -ignore C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -validate -full C:\Comercial\DMLoja\Recupera\DADOS1.fdb
r> gfix -mend -full -ignore C:\Comercial\DMLoja\Recupera\DADOS1.fdb

r> em nenhum desses comandos retornou erro.

r> Aparentemente a base não esta corrompida.

r> Isso já me aconteceu em outros bancos com outros clientes em outras tabelas e campos.

r> Acredito que tenha um baita bug no firebird ai.


r> Enviado do Email para Windows 10

r> De: Carlos H. Cantu via lista
r> Enviado:sexta-feira, 29 de janeiro de 2021 12:08
r> Para: FireBase
r> Cc:Carlos H. Cantu
r> Assunto: Re: [firebase-br] RES: Erro em trigger

r> GEN_ORDEM é chave primaria? Se sim, não pode estar nula. Se vc
r> encontrou algum registro onde esse campo está nulo, sendo ele uma PK,
r> então seu banco deve estar corrompido.

r> Não vejo problema no código do trigger. Verifique o banco com o gfix e
r> faça também um backup/restore para valida-lo.

r> []s
r> Carlos H. Cantu
r> eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
r> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

rvl>> So pra completar a NEW.ORDEM = GEN_ID(GEN_ORDEM, 1);  

rvl>> Também tem vários que estão como null.

rvl>> Grato

rvl>> Enviado do Email para Windows 10

rvl>> De: rodrigo via lista
rvl>> Enviado:sexta-feira, 29 de janeiro de 2021 10:58
rvl>> Para: FireBase
rvl>> Cc:rodrigo
rvl>> Assunto: [firebase-br] Erro em trigger

rvl>> Bom dia,

rvl>> Nessa trigger, quando o registro é gravado ele teria que colocar automaticamente
rvl>> A data e a hora.
rvl>> Mas em muitos registros está como null

rvl>> CREATE TRIGGER TR_ORDEM_DETAILFISCAL FOR DETAILFISCAL
rvl>> ACTIVE BEFORE INSERT POSITION 0
rvl>> AS  
rvl>> BEGIN  
rvl>> NEW.ORDEM = GEN_ID(GEN_ORDEM, 1);  
rvl>> if (NEW.DATAHORA IS NULL) THEN   
rvl>> NEW.DATAHORA = CURRENT_TIMESTAMP;  
rvl>> END
rvl>> ;

rvl>> O que será que esta errado?

rvl>> Grato




r> ______________________________________________
r> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
r> Para saber como gerenciar/excluir seu cadastro na lista, use:
r> http://www.firebase.com.br/fb/artigo.php?id=1107
r> Para consultar mensagens antigas:
r> http://www.firebase.com.br/pesquisa_lista.html






Mais detalhes sobre a lista de discussão lista