Outros: Durante a manutenção no BD retornou: Store duplicate value (visible to active transactions) in unique index "PK_MVgeral

Criado por Marcos Borges em 21/05/2025 12:39  ·  Atualizado em 21/05/2025 12:40  ·  Leitura: 2 min

Situação: 

Ao realizar uma manutenção do banco de dados, via arquivo .bat, é apresentado erro ao finalizar o processo na tabela MVGERAL;


Solução: 

Para solucionar o erro durante a manutenção, caso o banco de dados não esteja 100% comprometido, é necessário acessar ao IBexpert. Ao acessar o banco de dados, acesse a tabela MVgeral, para realizar um backup dos registros que estão gravados na tabela (caso seja bastante registros, pode ser exportado em partes pelo select, necessário ajustar a data desejada para exportação -  "select * from mvgeral where mvgeral.dt_movimento between '01.01.2000' and '01.01.2000'"):



Após a exportação de segurança, é necessário desativar todas as triggers, que possui vinculo a tabela MVgeral (Para auxilio de validar as triggers, pode ser identificado na guia "Dependencies" 



Após identificar, pode ser pesquisado pelo nome da trigger, ou acessar as triggers e identificar pelo nome, pode ser desativado, da seguinte forma;



Após desativar todas as triggers e exportado os registros da tabela por segurança, é necessário limpar a tabela pela função "Empty table";



Após realizar o comando "Empty table", pode demorar alguns minutos ou horas, dependendo da quantidade de registros. Após a conclusão do processo, verifique se a tabela contem algum registro, caso esteja completamente limpa, pode ser feita a manutenção no banco de dados novamente. Após a nova manutenção ser finalizada sem falhas, pode ser incluída os registros anteriormente exportado por segurança via Script executive: