Ignorare le chiavi esterne in MySql
A chi non è mai capitato di dover inserire un record in una tabella che avesse delle chiavi esterne, ma senza avere uno o più valori per tali chiavi?
bhè a me era capitato in passato e bestemmiando bestemmiando avevo lasciato correre ed ero ricorso a vari escamotage dettati dall’urgenza e dalle circostanze.
Oggi mi è capitato di nuovo e, visto che non avevo la fretta di un tempo e soprattutto non avevo la voglia di spremermi troppo le meningi ho chiesto lumi a google che mi ha gentilmente dato la soluzione nella forma di un post di Alexander Stetsenko:
quindi per disabilitare il controllo sull’integrità referenziale delle chiavi esterne basta eseguire questa query:
SET FOREIGN_KEY_CHECKS = 0;
eseguire tutte le query che si vuole senza stare a badare alle chiavi esterne, e poi magari riaccendere il controllo con:
SET FOREIGN_KEY_CHECKS = 1;
e il gioco è fatto… più semplice di così proprio si muore
