"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como eliminar registros duplicados em um banco de dados MySQL com restrição de chave exclusiva?

Como eliminar registros duplicados em um banco de dados MySQL com restrição de chave exclusiva?

Publicado em 19/11/2024
Navegar:976

How to Eliminate Duplicate Records in a MySQL Database with a Unique Key Constraint?

Expurgando registros duplicados de um banco de dados MySQL: uma solução chave exclusiva

Manter a integridade dos dados é crucial para a operação eficiente de qualquer banco de dados. Neste caso, você encontra uma tabela com uma coluna 'id' e 'title', onde 'title' deve ser distinto. No entanto, a presença de mais de 600.000 registos, incluindo numerosas duplicatas, representa um desafio para alcançar a singularidade. Nosso objetivo é eliminar essas entradas duplicadas sem comprometer quaisquer títulos exclusivos.

A solução está em utilizar o poder de uma restrição de chave exclusiva. Ao adicionar uma chave UNIQUE à coluna 'título', podemos efetivamente impor a exclusividade e evitar que registros duplicados sejam inseridos ou atualizados. No entanto, adicionar diretamente uma chave exclusiva a uma coluna com duplicatas existentes resultará em erros.

Para resolver esse problema, empregamos o comando 'ALTER IGNORE TABLE' seguido pela cláusula 'ADD UNIQUE KEY'. Este comando instrui o MySQL a ignorar erros que possam surgir durante a adição da chave exclusiva. Como resultado, todas as linhas duplicadas que teriam violado a restrição exclusiva são descartadas silenciosamente, eliminando efetivamente as duplicatas.

Aqui está a sintaxe de comando que você pode usar:

ALTER IGNORE TABLE table ADD UNIQUE KEY idx1(title);

Observe que este comando pode não ser compatível com tabelas InnoDB em certas versões do MySQL. Para tais casos, consulte esta postagem para obter uma solução alternativa.

Ao executar este comando, você estabelece uma chave exclusiva para a coluna 'título' e remove todos os registros duplicados de uma só vez. Isso permite que você mantenha a integridade dos dados e, ao mesmo tempo, garanta a exclusividade dos títulos.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3