-
Jak usunąć tablicę mającą klucz?
Pewnie nie raz zdarzyło Wam się, że próbując wyczyścić daną tablicę w MySQL, dostajecie komunikat „Cannot delete or update a parent row: a foreign key constraint fails”.
Cóż wtedy robić>? Jak żyć? Najprościej wyłączyć sprawdzanie klucza, wydając w konsoli MySQL lub w phpMyAdmin komendę
SET FOREIGN_KEY_CHECKS=0;
Po wykonaniu powyższej komendy możemy już czyścić tablice bez stresu, że nas coś zatrzyma 🙂 Pamiętajmy na koniec o włączeniu sprawdzania klucza. Niezbędne będzie w tym przypadku poniższe polecenie:
SET FOREIGN_KEY_CHECKS=1;
Powodzenia 🙂 Jakbyście mieli jakieś problemy z phpMyAdmin lub bazami, to piszcie i dzielcie się swoimi doświadczeniami.
Ale trzeba by dodać wielkimi literami „MUSISZ WIEDZIEĆ CO WŁAŚCIWIE ROBISZ”.
Jeśli był klucz obcy, to był on po coś. Jak wywalisz tablicę, to konsekwencje mogą być bardzo różne i potencjalnie nieprzyjemne.
Ten sposób jest OK jeśli chcesz wyczyścić tablicę np po to żeby potem ją odtworzyć z kopii. Ja się chcesz jej pozbyć na dobre, to:
– sprawdź co to za klucz
– usuń klucz
– usuń tablicę
Konradzie masz słuszność w tym temacie 🙂