Cosa sono i vincoli e i controlli della chiave esterna di MySQL
Una CHIAVE ESTERNA (Foreign key) è una chiave del database utilizzata per collegare due tabelle del database insieme. È un campo (o insieme di campi e/o colonne) in una tabella, che fa riferimento alla CHIAVE PRIMARIA in un’altra tabella. Il vincolo CHIAVE ESTERNA viene utilizzato per impedire azioni che distruggono i collegamenti tra le tabelle.
Avere tali relazioni tra le tabelle nel database è utile per mantenere l’integrità dei dati nel database e impedisce l’inserimento o l’eliminazione errati dei dati dalle tabelle collegate.
Tuttavia, in alcuni casi in cui è necessario ripopolare una quantità elevata di dati all’interno del database, il controllo del vincolo CHIAVE ESTERNA può impedire il ripopolamento. Ad esempio, se hai creato una copia temporanea del tuo sito web e hai apportato modifiche significative e desideri pubblicarlo, l’azione potrebbe essere bloccata dal controllo dei vincoli. Questo perché quando lanci lo staging live, cerca di sovrascrivere i dati in alcune delle tabelle del tuo database che hanno la relazione di chiave esterna.
Se ciò accade, lo strumento Staging SiteGround mostrerà un messaggio di avviso e ti darà la possibilità di disabilitare il controllo e inviare nuovamente la copia di staging. È sufficiente fare click su Riprova e la copia di staging verrà lanciata con il controllo del vincolo CHIAVE ESTERNA disabilitato. Saltare il controllo non influirà sui tuoi database o sulle CHIAVI ESTERNE nei contenuti.