MySql – Eliminar registro saltando claves foráneas

En ocasiones nos enfrentamos a casos puntuales en los que valoras si arriesgarte o no. Una de ellas es la eliminación de registros en un motor de base de datos. Tenemos la base de datos ya estructurada con todos sus datos introducidos, y queremos eliminar un registro al que hemos asignado una clave foranea erronea. No nos deja modificarla, no nos deja eliminar el registro porque no se cumple la regla de clave foranea (no apunta a un registro). Es muy usual que pase cuando asignamos el valor NULL a claves foráneas.

Bien, llegado el momento, y bajo la responsabilidad de cada uno, se nos puede presentar la necesidad de eliminar el registro saltando la restricción de clave foránea. Cómo?

1
2
// En phpmysql o en comando ejecutamos
SET foreign_key_checks = 0;

Para recuperar que se tenga en cuenta las claves foráneas a la hora de eliminar, modificar…

1
2
// En phpmysql o en comando ejecutamos
SET foreign_key_checks = 1;

Y atención, que hacer esto puede llevar consecuencias graves. Si lo hacéis será bajo vuestra responsabilidad y sabiendo que podéis hacer que la base de datos deje de tener bien relacionados.

Información relacionada

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*