Como desabilitar uma FOREIGN KEY em MySQL

Neste artigo você vai aprender a como desabilitar uma FOREIGN KEY em MySQL, de modo temporário ou para sempre!

desabilitar uma FOREIGN KEY em MySQL capa

Fala programador(a), beleza? Bora aprender mais sobre configurações, FOREIGN KEY e também SQL!

Podemos desabilitar temporariamente ou para um tempo indeterminado as chaves estrangeiras

Formação Claude Code
Formação Recomendada

Formação Claude Code

Domine Claude Code do absoluto zero até o avançado

  • 120 aulas
  • 4 projetos
  • 9h 45min

Há um comando que se chama SET, que serve para alterar algumas configurações

Vamos utilizar o SET em conjunto de FOREIGN_KEY_CHECKS, uma propriedade de chaves estrangeiras

Alterando este valor para 0, desabilitados as FKs

Veja um código como exemplo:

SET FOREIGN_KEY_CHECKS=0;

Agora as chaves estrangeiras estão desabilitadas

Para voltar elas ao normal, utilize o seguinte comando:

SET FOREIGN_KEY_CHECKS=1;

Alterando para 1 teremos novamente as checagens de FKs, ou seja, o sistema volta como a forma padrão

Podemos então alternar o valor de 0 para 1 quando precisarmos!

Conclusão

Neste artigo você aprendeu a como desabilitar uma FOREIGN KEY em MySQL, de modo permanente ou temporário

Utilizamos o operador SET em conjunto de FOREIGN_KEY_CHECKS

Alterando o valor entre 0 e 1, sendo 0 desabilitado e 1 para habilitar novamente

Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!

Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!

Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias

O link acima contém um cupom de desconto para os cursos!

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

1 Comentário
Oldest
Newest Most Voted
Anderson Santos

Qual o Risco de fazer isso em um banco em produção. Pergunto pois estou tentando criar uma fk para uma tabela e coluna já existente, mas dá erro de restrição: [Content] Erro SQL (1452): Cannot add or update a child row: a foreign key constraint fails (nome_banco.#sql-734_1d2, CONSTRAINT fk_adiantamentos_lancamento_caixa_estorno FOREIGN KEY (lancamento_caixa_estorno_id) REFERENCES lancamento_caixa (lancamento_caixa_id) O) Mas quando eu uso: SET foreign_key_checks = 0; ALTER TABLE adiantamentos ADD INDEX fk_adiantamentos_lancamento_caixa_estorno (lancamento_caixa_estorno_id); ALTER TABLE adiantamentos ADD CONSTRAINT fk_adiantamentos_lancamento_caixa_estorno   FOREIGN KEY (lancamento_caixa_estorno_id) REFERENCES lancamento_caixa(lancamento_caixa_id) ON UPDATE CASCADE ON DELETE RESTRICT; SET foreign_key_checks = 1; Consigo criar a Fk. Meu receio é fazer… Read more »

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares