[firebase-br] BUG NO FIREBIRD?

Gladiston Santana gladiston em vidy.com.br
Qui Set 19 14:26:44 -03 2019


Uma sugestão, use o where de seu UPDATE num SELECT para atestar os
registros que serão afetados.
Não há como um update afetar outros registros que não sejam os que você
obteve no select.

Se o problema persiste, crie uma trigger do tipo AFTER para monitorar o
momento exato que um valor é substituido por outro da forma como descreveu
, essa trigger pode alimentar uma tabela auxiliar informando nome do
usuario, estação(IP) e nome do programa. Essas variaveis são obtidas de
mon$attachment ou de contexto.

Em qui, 19 de set de 2019 às 14:09, Anderson Barretta <
sistemas em prevedello.com.br> escreveu:

> Boa tarde pessoal, estou com um problema no Firebird 3.04
> que acredito que seja um BUG.
>
> temos uma tabela de Notas com 48.000 registros, com varios campos, entre
> eles CFOP e XML.
> a coluna do CFOP possui alguns campos nulos e outros com valores.
> o campo XML é um BLOB SUB_TYPE 0 SEGMENT SIZE 80
>
>
> o que esta acontecendo é que ao executar um comando assim
> UPDATE NOTAVENDA SET
> CODCFOP_NOTAVENDA = CODCFOP_NOTAVENDA
> WHERE (CODCFOP_NOTAVENDA > 0);
>
> mais de 300 notas acabaram ficando com o campo XML nulo.
>
> logo desconfiei de alguma trigger, então escluir todas elas.
> o problema continuava.
>
> então, criei um Banco novo, do zero, apenas com a tabela NOTA
> e fiz um Pump dessa tabela.
>
> apos executar os sql na base nova, ocorreu o mesmo problema...
>
> mas se eu executar o update com o coalesce, nenhum XML é alterado.
>
> UPDATE NOTAVENDA SET
> CODCFOP_NOTAVENDA = CODCFOP_NOTAVENDA
> WHERE ( COALESCE(CODCFOP_NOTAVENDA,0) > 0);
>
> fiz o teste em mais 3 bases de clientes diferentes, e o problema é o mesmo.
>
> alguém já passou por isso?
> uso o Firebird desde que ainda era Interbase 6 e nunca tinha visto nada
> igual.
> como um updade num campo pode influenciar outro ??? :()
>
> posso disponibilizar essa base com apenas essa tabela, se algum quiser
> verificar.
>
> --
>
> <http://www.prevedello.com.br>
>
>
> Anderson Barretta
> Dpto: Desenvolvimento
>
> Fone: (55) 3744 3880
> Skype: sistemas em prevedello.com.br
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>


-- 
A Vidy possui um Sistema de Gestão da Qualidade estruturado e com
Certificação ISO 9001 há mais de 10 anos, mantendo seu foco na Qualidade e
na Melhoria Continua.

Em março de2018 migramos com sucesso para a nova versão da ISO 9001.

Somos a única Empresa Brasileira de Engenharia de Laboratórios com
certificação com o Escopo Completo; desde Projetos, Engenharia, Construção,
Fabricação e Instalação de Laboratórios.



Mais detalhes sobre a lista de discussão lista